Python编译安装后ssl模块无法调用

  • 作者:lwj
  • 分类:Python
  • 发表日期:2019-10-22 21:21:27
  • 阅读(724)
  • 评论(0)

Ubuntu源码安装Python3.6.5

问题:

ubuntu源码编译安装python3.6.5后使用requests库时,访问https的网站报错SSL module is not available

解决:

1. 去掉Modules/Setup.dist 207-210行代码的注释并修改ssl文件位置

# 查看ssl文件位置
sudo openssl version -a
# 进入python3.6.5源码路径
cd /usr/bin/python3.6.5
# 修改setup.py文件
sido vim Modules/Setup.dist

# 修改结果如下:
# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
SSL=/usr/lib/ssl            # 你的ssl文件位置
_ssl _ssl.c \
        -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
        -L$(SSL)/lib -lssl -lcrypto

2. 修改setup.py文件

sudo vim setup.py

# 修改后结果如下 
# Detect SSL support for the socket module (via _ssl)
        search_for_ssl_incs_in = [
                              '/usr/local/ssl/include',
                              '/usr/contrib/ssl/include/openssl''
                             ]

3. 重新编译安装

sudo ./configure --enable-optimizations
sudo make -j 2
sudo make altinstall 

4. 测试功能正常

ubuntu@VM-0-14-ubuntu:~$ python
Python 3.6.5 (default, Oct 22 2019, 09:53:29)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>>

 

觉得不错,支持一下!

提交评论

您尚未登录,登录之后方可评论~ 登录 or 注册

评论列表

暂无评论
返回顶部

建议反馈

1. 可在博文底部留言评论

2. 发邮件到i_suichuan@163.com