- 安装依赖项
对于没有图形化支持的系统可自行去除 tk-dev
sudo apt install uuid-dev libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev liblzma-dev libssl-dev libgdbm-compat-dev libffi-dev libreadline-dev openssl
- 下载 Python 源代码
我们可以去 Python官网 下载一份最新的源代码,通常右面有tarball
字样,一般选GZip压缩的版本就可以。
当然也可以使用wget:(以发布时最新的python3.12.5举例)
wget https://www.python.org/ftp/python/3.12.5/Python-3.12.5.tgz
解压文件
编译安装
重复编译安装前请确保运行一次 make clean
注意:make -j 后面的数字请根据CPU的核心数,有多少核心就填多少,可以加快编译速度
./configure --prefix=/usr/local/python3.12 --enable-optimizations
make -j 4
sudo make install
- 更新默认版本
这个操作风险较高!如无需要请勿执行!
rm ln /usr/bin/python3
ln -s /usr/local/python3.12/bin/python3 /usr/bin/python3
- 处理 openssl 问题
如果你在安装后出现 import ssl
失败的情况,那么你可能需要编译安装openssl。另外,较高版本的openssl无法被python调用,建议使用1.1.1
版本(哪怕比较老了)