Python3.8 SSL模块报错 No module named '_ssl'解决办法

Python3.8SSL模块报错No module named '_ssl'解决办法

  • 报错详情:
  • 解决办法:
    • 1.安装依赖库(已安装可以忽略)
    • 2. 下载、解压Python3.8.2
    • 3. 载在解压的文件中找到 Python-3.8.2/Modules/Setup 文件
    • 4.把原来的Python3.8的安装文件删掉,并重新新建
    • 5.重新编译安装Python3.8
  • 问题解决

报错详情:

Python3.8 SSL模块报错 No module named '_ssl'解决办法_第1张图片
Ubuntu安装Python3.8.2之后 import ssl 报错 没有 _ssl模块,但是原来的Python3.6.9却没有报错。 网上很多方法是直接安装依赖库,但是都行不通。后来折腾了一番重要解决了,所以记录一下解决办法。

解决办法:

1.安装依赖库(已安装可以忽略)

sudo apt install zlib-devel bzip2-devel openssl-devel libssl-dev ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

2. 下载、解压Python3.8.2

步骤略

3. 载在解压的文件中找到 Python-3.8.2/Modules/Setup 文件

vim Setup

找到
Python3.8 SSL模块报错 No module named '_ssl'解决办法_第2张图片
把 其中5行注释去掉,如下:

# Socket module helper for socket(2)
_socket socketmodule.c timemodule.c

# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
SSL=/usr/local/ssl
_ssl _ssl.c \
       -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
       -L$(SSL)/lib -lssl -lcrypto

Python3.8 SSL模块报错 No module named '_ssl'解决办法_第3张图片

保存退出:

4.把原来的Python3.8的安装文件删掉,并重新新建

rm -rf /usr/local/python3.8/
mkdir /usr/local/python3.8/

** 这里的/usr/local/python3.8/是我的安装目录,具体看你们的安装目录,下同

5.重新编译安装Python3.8

回到 安装包的目录

./configure --prefix=/usr/local/python3.8/
make
make install

问题解决

Python3.8 SSL模块报错 No module named '_ssl'解决办法_第4张图片

你可能感兴趣的:(Python,Ubuntu,linux,python,ubuntu,pip,ssl)