昨天安装好python3.10后,运行代码发现提示无法import _ssl
后来发现需要使用openssl
, 编译带上openssl后提示版本需要openssl 1.1.1
以上的版本,重新安装新版的openssl后再安装还有问题,网上找了一些方案折腾了几下才成功了,在此记录一下
安装openssl
- 下载openssl 3.0.8 下载页面
wget https://www.openssl.org/source/openssl-3.0.8.tar.gz
- 解压openssl-3.0.8.tar.gz
tar -xvf openssl-3.0.8.tar.gz
- 编译安装
cd openssl-3.0.8 ./config --prefix=/usr/local/openssl3 make && make install
安装python
- 下载python 3.10 下载页面
wget https://www.python.org/ftp/python/3.10.10/Python-3.10.10.tar.xz
- 解压Python-3.10.10.tar.xz
tar -xvf Python-3.10.10
- 配置环境变量,注意openssl路径与安装的openssl路径一致
export LD_LIBRARY_PATH=/usr/local/openssl3/lib64:$LD_LIBRARY_PATH
- 修改
Modules/Setup
cd Python-3.10.10 vi Modules/Setup
将以下注释去掉,注意OPENSSL=/usr/local/openssl3
以及lib64
路径
- 编译安装
./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl3 make && make install
- 验证是否成功