简述python
从官网下载了Python3.7.4,直接编译安装后,使用pip3出现了报错信息: Can't connect to HTTPS URL because the SSL module is not availablevim
错误缘由bash
在Python3.7以后的版本,依赖的openssl,必需要是1.1或者1.0.2以后的版本,或者安装了2.6.4以后的libressl。ide
image.png网站
而本地的openssl依然是1.0.1e的。spa
?.net
1
2
|
[root@localhost ~]
# openssl version
OpenSSL
1.0
.
1e
-
fips
11
Feb
2013
|
解决方法code
上openssl官网下载1.0.2或者1.1以后的openssl包,编译安装。我选择的是1.0.2r。orm
?htm
1
2
3
4
5
6
|
[root@localhost ~]
# wget http://www.openssl.org/source/openssl-1.0.2r.tar.gz
[root@localhost ~]
# tar zxvf openssl-1.0.2r.tar.gz
[root@localhost ~]
# ./config --prefix=/opt/openssl1.0.2r --openssldir=/opt/openssl1.0.2r/openssl no-zlib
[root@localhost ~]
# make && make install
[root@localhost ~]
# echo "/opt/openssl1.0.2r/lib" >> /etc/ld.so.conf
[root@localhost ~]
# ldconfig -v
|
注意:编译openssl1.0.2r的时候建议加上no-zlib,不然后面可能会出现undefined symbol: SSL_CTX_get0_param错误
安装python3.7
下载Python包,编译
1
2
3
|
[root@localhost ~]
# wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tar.xz
[root@localhost ~]
# tar xvf Python-3.7.4.tar.xz
[root@localhost ~]
# cd Python-3.7.4;./configure --prefix=/data/tools/Python3.7.4
|
编译完成后不要make,先修改Python源码包中ssl的参数
打开源码解压目录中的 Modules/Setup ,直接搜索 SSL= ,将SSL=后面的目录改成前面openssl的安装目录,并把下面三行的注释去掉。
1
2
3
4
5
|
[root@localhost ~]
# vim Modules/Setup
SSL
=
/
opt
/
openssl1.
0.2r
_ssl _ssl.c \
-
DUSE_SSL
-
I$(SSL)
/
include
-
I$(SSL)
/
include
/
openssl \
-
L$(SSL)
/
lib
-
lssl
-
lcrypto
|
改完以后就在解压目录直接make就好了。
1
2
3
4
5
6
7
8
9
10
|
[root@localhost ~]
# make && make install
[root@localhost ~]
# echo "export PATH=/data/tools/Python3.7.4/bin:$PATH" >> ~/.bashrc
[root@localhost ~]
# source ~/.bashrc
[root@localhost ~]
# pip3 list
Package Version
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
pip
19.0
.
3
setuptools
40.8
.
0
You are using pip version
19.0
.
3
, however version
19.2
.
1
is
available.
You should consider upgrading via the
'pip install --upgrade pip'
command.
|
总结
以上所述是小编给你们介绍的解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available,但愿对你们有所帮助,若是你们有任何疑问请给我留言,小编会及时回复你们的。在此也很是感谢你们对脚本之家网站的支持!