unbuntu更新Python3.11版本,安装依赖手动编译解决ssl问题(亲测可用)

  1. 安装依赖
sudo apt update
sudo apt install build-essential zlib1g-dev libffi-dev libssl-dev
  1. 下载安装包,手动配置编译
    官网查找对应linux版本tgz包
    image
wget https://www.python.org/ftp/python/3.11.0/Python-3.11.0.tgz
tar -xzvf Python-3.11.0.tgz
cd Python-3.11.0
  1. 配置编译安装
##编译安装
#后面加上 --enable-optimizations 会自动安装pip3及优化配置
./configure --prefix=/usr/local/python3  --enable-optimizations --with-openssl=/usr/local/openssl
make -j8
sudo make install
  1. 添加软连接(这个方法不好,我这里直接改path和LD_LIBRARY_PATH更快

踩坑注意

由于python3.10以后需要openssl1.1.1版本以上支持
所以ubunut主机还需要编译安装openssl1.1.1以上模块
注意with-openssl的路径

参见https://www.openssl.org/,包括以下版本:
https://www.openssl.org/source/openssl-3.1.0-alpha1.tar.gz
https://www.openssl.org/source/openssl-1.1.1s.tar.gz
https://www.openssl.org/source/openssl-3.0.7.tar.gz
tar -zxf openssl-1.1.1s.tar.gz
cd openssl-1.1.1s/
./config -fPIC --prefix=/usr/include/openssl enable-shared
make -j8
make install

export LD_LIBRARY_PATH=/usr/include/openssl/lib:$LD_LIBRARY_PATH
export PATH=/usr/include/openssl/bin:$PATH

其中:
 -fPIC: 位置无关代码
 --prefix=: 路径 一般选 /usr/include/openssl
 enbale-shared: 动态库

posted @ 2024-08-19 23:37  学不会xuebuhui  阅读(1)  评论(0编辑  收藏  举报
Language: javascript