处理python运行时报no module __ssl

87 阅读1分钟

处理python运行时报no module __ssl

主机环境问题,导致fastapi运行时报no_module __ssl。

处理思路:

1. 安装缺少的依赖包
2. 修改Setup.dist文件
3. 重新编译安装python3

系统安装相关依赖包


yum -y install openssl-devel

yum -y install bzip2-devel

yum -y install expat-devel

yum -y install gdbm-devel 

yum -y install readline-devel

yum -y install sqlite-devel

Setup.dist

去掉下面几行的注释

// vim  /usr/local/python3/Python-3.7.10/Modules/Setup.dist 

_socket socketmodule.c timemodule.c

SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto

重新编译安装

cd /usr/local/python3/Python-3.7.10 
./configure --prefix=/usr/local/python3
make && make install

# 建立软连接
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python37
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip37
# 就可以用 pyhton37  pip37 来运行了