遇到的问题
笔者手动安装了python3.6、3.7版本,随后在pycharm中发现,python3.6、3.7版本无法使用ssl模块。因此需要重新编译安装。
解决办法
此处默认读者已经自行安装(折腾)了OpenSSL等模块且符合版本要求等。
提示
python3.7中的方法也可能适用于3.6。但是3.6中的方法因为在3.7的setup.py中找不到明确路径,应该行不通。
python3.6
自行下载好python3.6压缩包后,解压。在已解压文件夹中找到setup.py文件。这里的版本为3.6.15,其他版本位置可能稍有不同。
在图中849行, search_for_ssl_incs_in 里面,加入自己系统的openssl 路径,图中第三项
'/sur/include/'
即为博主自己添加的openssl路径。
补充一下,openssl路径可使用
whereis openssl
查询
之后,cd进入解压文件夹,正常编译安装即可,这里采用了默认安装路径:
cd /home/qdpad/下载/Python-3.6.15/
./configure
sudo make
sudo make install
正确安装的测试方法:
终端输入
python3.6
在python环境输入
import ssl
无报错即可。
python3.7.16
步骤同上述3.6的一样。解压后打开文件夹下的Modules目录,找到setup文件(无后缀)。
找到下图内容。
将#SSL=/usr/incluse/openssl这一行改为自己系统的openssl头文件所在路径,这里已经改好了。
设置:
./configure --with-ssl
出现下图yes项提示时说明成功了
正常编译安装:
sudo make
sudo make install
使用import ssl检验通过即可。
参考了:
https://blog.csdn.net/root_clive/article/details/104061486
https://blog.csdn.net/jinxiaonian11/article/details/109579076
请各位大佬批评指正,谢谢!