安装python3.11.1
wget https://www.python.org/ftp/python/3.11.1/Python-3.11.1.tgz
解压
tar -zxvf Python-3.11.1.tgz
创建一个python3的目录
mkdir /usr/lib/python3.11
将此时的python3.11转移到创建的目录中
mv Python-3.11.1/* /usr/lib/python3.11/
配置编译路径
./configure –prefix=/usr/lib/python3.11
编译安装
make && make install
创建并覆盖原来的软链接
ln -sf /usr/lib/python3.11/bin/python3.11 /usr/bin/python3.11
ln -sf /usr/lib/python3.11/bin/pip3.11 /usr/bin/pip3
ln -sf /usr/bin/pip3 /usr/bin/pip
如出现 No module named ‘_ssl’ 错误解决方法
https://www.openssl.org/source/openssl-1.1.1w.tar.gz
tar -zxvf openssl-1.1.1w.tar.gz
cd openssl-1.1.1w
./config
make
make install
默认安装在/usr/local/openssl
编译完成记得到目录下检查是否有include,否则下一步无效。
添加ssl支持
编辑Python3.11/Modules/Setup文件,修改或直接添加以下信息。
_socket socketmodule.c
SSL=/usr/local/openssl111/include #SSL路径
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto
重新编译安装python3.11
./configure –prefix=/usr/lib/python3.11
make && make install
测试
python3.11 -c “import ssl”
无报错说明成功。