CentOS 7上Python3.10报错 No module named ‘_ssl‘

步骤一:升级ssl。

通过命令:openssl version查看centos上默openssl版本是1.0,版本过低,导致失败了。

升级过程如下

1.分别执行以下命令,下载安装包并编译安装

mkdir -p /usr/local/soft

cd /usr/local/soft

wget https://www.openssl.org/source/openssl-1.1.1d.tar.gz

tar -zxvf openssl-1.1.1d.tar.gz

cd openssl-1.1.1d

./config --prefix=/usr/local/openssl

make && make install

说明:./config --prefix=/usr/local/openssl 此命令,可以直接./config ,这样默认安装路径就是/usr/local 。建议增加--prefix=/usr/local/openssl ,表示安装路径是在/usr/local/openssl

2.修改链接文件(此项可以省略不用做)

备份原有链接

mv /usr/bin/openssl{,.bak}

创建软链接

ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl

3.添加路径至ld.so.conf

echo "/usr/local/openssl/lib" >> /etc/ld.so.conf

注意:lib路径最后不带"/",否则报错

4.设置生效

ldconfig -v

5.这样就安装成功了,可以通过命令 /usr/local/openssl/bin/openssl version查看,会显示:

OpenSSL 1.1.1d 10 Sep 2019

步骤二:重新编译安装python。

方法1(强烈推荐):

1.执行命令清除临时文件:make clean

2.进行配置: ./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl --with-openssl-rpath=auto

有2个地方注意: --prefix=/usr/local/python3 中=后面是python安装路径。--with-openssl=/usr/local/openssl 中=后面是openssl 安装路径。

3.执行命令:make

4.执行命令:make install 进行安装。

5.安装后,执行python3 后,通过import ssl没有报错,就证明openssl安装成功了。

方法2(仅做记录,未验证):

1.进入python安装包解压后的目录,打开Modules/Setup文件,

找到段代码大概在文件的57%左右的位置,把下面5句代码的注释取消,还有两个地方的路径要修改。

一是OPENSSL后面的路径改成你自己的openssl目录,我的是/urs/local/openssl,这里原本是OPENSSL=/path/to/openssl/directory。

二是蓝色框里面的要改成lib64,其它的不要动,保存。蓝色框这里的路径,如果不确定的话,可以打开你的openssl目录查看,是lib还是lib64.

说明:Python3的不同版本中,Setup 文件名可能不同,打开后红色框框部分的内容也会不同。

2.执行命令清除临时文件:make clean

3.执行命令:

./configure --prefix=/usr/local/python3

make

make install

4.安装后,执行python3 后,通过import ssl没有报错,就证明openssl安装成功了。

相关推荐
857god22 分钟前
收入 43 美元的拼豆 App,我把核心算法开源了
开源
斯内普吖1 小时前
(开源)线上花店系统实战指南 基于 Java + SSM + Vue + MySQL
java·vue.js·mysql·开源
Web极客码2 小时前
告别慢速对话大模型:如何通过替换语言头,把开源 Qwen 改造成毫秒级文本分类器
开源·模型路由·qwen 改造
码点滴2 小时前
67000 星的开源语音引擎:用 VoiceStudio 搭建本地语音克隆与多语言配音流水线
开源·音视频
恒拓高科WorkPlus3 小时前
私有化IM技术选型:商业平台、开源IM和IM PaaS怎么选?
云原生·开源·paas
Vex2une3 小时前
获取 PowerToys - 从系统外挂工具到开源效率平台
windows·开源·效率工具·powertoys·fancyzones·command palette·键盘管理器
apple_692658854 小时前
GitHub fqapp 番茄开源魔改版:小短剧+漫剧+听书聚合工具 安装指南使用
学习·开源
鶴哥只手遮天4 小时前
Apache Subversion 1.15 源码深度剖析-第 3 章 文件系统层(FS 抽象与 FSFS 后端)
svn·开源
unconditional5 小时前
我把 nvm、jenv、pyenv 全卸了:一个 Rust 单文件管完 40+ 开发工具
开源
鶴哥只手遮天5 小时前
Apache Subversion 1.15 源码深度剖析-第 6 章 工作副本:WC-NG 与 pristineless
svn·开源