openssl install (for pip3 install request)
1、查看安裝的版本
openssl version -a
OpenSSL 1.0.2
2、下載 openssl-1.1.1.tar.gz,目前最新是1.1.1,可以通過修改版本號的方式下載最新版本
最新版本可以在這個網站下載:
https://www.openssl.org/source/
wget http://www.openssl.org/source/openssl-1.1.1.tar.gz
3、安裝zlib和zlib-devel
yum install -y zlib
yum install zlib-devel
4、解壓下載的openssl
mkdir /usr/local/ssl/
tar zxf openssl-1.1.1.tar.gz
cd openssl-1.1.1
./config shared zlib
make
make install
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
echo “/usr/local/ssl/lib” >> /etc/ld.so.conf
ldconfig -v
5、查看是否升級成功
openssl version -a
6、可能存在的異常
openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
這是由於openssl庫的位置不正確造成的。
解決方法:
在root用戶下執行:
ln -s /usr/local/ssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/ssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
python 3.7.x update
建立立空文件夾
mkdir /usr/local/python3
解壓,進入目錄,安裝python3 (要注意如果你的ssl也是指定目錄安裝的 --with要跟上路徑)
tar -xvJf Python-3.6.2.tar.xz
cd Python-3.6.2
vim ../Python-3.7.1/Modules/Setup.dist
vim ../Python-3.7.1/Modules/Setup
將下面原本註釋掉的內容給取消註釋即可,一共四行
# 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/**** ---> openssl 安裝位置
_ssl _ssl.c /
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl /
./configure --prefix=/usr/local/python3
make && make install
最後創建軟連接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
安裝sqlite-devel
yum install sqlite-devel
./configure --prefix=/usr/local/python3
make && make install
測試一下,python3,import ssl,import sqlite3,全都沒有問題即成功。