安装python后使用ssl模块报错,可以参考以下文章解决
在编译安装软件的时候,如果出现参数错误的情况,建议使用./configure --help | less 命令查看可以正确编译的参数。搜索到ssl选项相关,就如一下意思一样。
可见 --with-ssl 参数错了,应该使用 --with-ssl-default-suites 参数,或者使用 --with-openssl= 指定openssl的安装目录 ,这样可以先解决编译报错的问题。
安装目录:
...跳过...
--with-openssl = OpenSSL目录的DIR根目录
--with-ssl-default-suites = [python | openssl | STRING]
覆盖默认密码套件字符串,python:使用
Python的首选选择(默认),openssl:
保持OpenSSL的默认设置不变,STRING:使用
自定义字符串,PROTOCOL_SSLv2会忽略该设置
下面再看看是不是openss 和python的版本不兼容的问题。
方法一:
https://www.cnblogs.com/mlgjb/p/7976561.html
按照这种方法尝试:
在修改完Setup文件后,重新在python解压后目录下使用 make 报错:
./Modules/_ssl.c:74:6: 错误:#error "libssl is too old and does not support X509_VERIFY_PARAM_set1_host()"
由此可见,还是升级openssl 最好。使用以下方法二较为稳妥。
方法二(稳妥):
https://www.cnblogs.com/lemon-le/articles/13419429.html#
在安装完openssl后,软链接也创建后,也可以按如下设置,使新版生效:(原理就是直接将openssl的动态链接库文件加入到linux的库文件目录里)
[root@tao-ffy-v5-dns openssl-1.1.1g]# openssl version
openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
[root@tao-ffy-v5-dns openssl-1.1.1g]# cp /usr/local/openssl/lib/libssl.so.1.1 /usr/lib
lib/ lib64/ libexec/
[root@tao-ffy-v5-dns openssl-1.1.1g]# cp /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/
[root@tao-ffy-v5-dns openssl-1.1.1g]# openssl version
openssl: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
[root@tao-ffy-v5-dns openssl-1.1.1g]# cp /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/
[root@tao-ffy-v5-dns openssl-1.1.1g]#
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通