这几天撸了一个Warframe的查询bot(GamerNoTitle/AaTMbot: AaTMbot (Alerts & Tenno’s Market Bot) 是一个与go-cqhttp一起运行的WARFRAME信息查询/推送bot (github.com)),因为自己物理机子用的Python版本是3.10.3,所以干脆就用上了3.10更新的match...case...写法,然鹅就当我写完bot部署到服务器的时候,却发现我的服务器的py还停留在3.8.10,这不就用不了match...case...了吗……所以我决定更新一下我的服务器上面的Python


下载Python

很简单,终端直接wget就行了,链接自己从官网获得

1
$ wget https://www.python.org/ftp/python/3.10.9/Python-3.10.9.tgz

然后我们要解压一下我们的文件,用tar命令

1
$ tar -zxvf Python-*.tgz

然后会得到一个文件夹,我们进入这个文件夹里面,准备编译Python

编译Python

Python源码是要自己编译的,编译成二进制可执行文件才能被我们的系统执行,首先我们要让它自己配置一下

1
$ ./configure --enable-optimizations

等它配置完以后开始编译(没有make的要先装一下,用sudo apt install make -y

1
$ make

这个过程会非常的漫长(主要我服务器性能太低了),等它编译完

进行安装

1
$ sudo make install

完成后,我们还要把原来的Python替换掉

替换Python

先删除原来的Python

1
$ rm /usr/bin/python

然后建立连接

1
2
$ sudo ln -s /home/ubuntu/python310/Python-3.10.9/python /usr/bin/python3
$ sudo ln -s /home/ubuntu/python310/Python-3.10.9/python /usr/bin/python

这样就完成了