阐明

实用于CentOS6、CentOS7

编译openssl

·下载(这里须要查看python3.7最低要求的openssl版本多少来进行编译)

$  wget http://www.openssl.org/source/openssl-1.1.1.tar.gz

· 编译

$ tar zxf openssl-1.1.1.tar.gz$ cd openssl-1.1.1$ ./config --prefix=$HOME/openssl shared zlib$ make$ make install

编译Python3.7.4

· 下载包

$ wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz

· 解压包

$ tar zxf Python-3.7.4.tgz$ cd Python-3.7.4

· 批改配置文件-编译SSL模块

$ vi Modules/Setup#SSL=/usr/local/sslSSL=/home/testerzhang/3rd/openssl_ssl _ssl.c \    -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \    -L$(SSL)/lib -lssl -lcrypto

**举荐 :020 继续更新,精品小圈子每日都有新内容,干货浓度极高。
牢固人脉、探讨技术 你想要的这里都有!
领先入群,跑赢同龄人!(入群无需任何费用)
点击此处,与Python开发大牛一起交流学习。
群号:745895701
申请即送:
Python软件安装包,Python实战教程
材料收费支付,包含 Python根底学习、进阶学习、爬虫、人工智能、自动化运维、自动化测试等**

· 编译办法

$  ./configure --prefix=/home/testerzhang/3rd/Python-3.7.4 --with-openssl=/home/testerzhang/3rd/openssl $ export LD_LIBRARY_PATH=/home/testerzhang/3rd/openssl/lib/:$LD_LIBRARY_PATH$ make$ make install

· 移植其余环境
配置相干依赖的ssl库文件,以便移植的时候如果零碎没有这个版本的ssl库,能够读取本人的库文件。

$ cp /home/testerzhang/3rd/openssl/lib/libssl.so.1.1 /home/testerzhang/3rd/Python-3.7.4/lib$ cp /home/testerzhang/3rd/openssl/lib/libcrypto.so.1.1 /home/testerzhang/3rd/Python-3.7.4/lib

在其余机器配置python环境变量

$ vim ~/.bash_profileexport PYTHONHOME=$HOME/3rd/Python-3.7.4export PYTHONPATH=$PYTHONHOME/lib/python3.7export PYTHONUNBUFFERED=1export PATH=$PYTHONHOME/bin:$PATHexport LD_LIBRARY_PATH=$PYTHONHOME/lib:$LD_LIBRARY_PATH

失效其余机器的环境变量

$ source ~/.bash_profile

验证

$ python3Python 3.7.4 (default, Jan  7 2020, 11:10:45) [GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linuxType "help", "copyright", "credits" or "license" for more information.>>> import ssl