安裝openssl
使用pip3安裝?virtualenv的時候會提示WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
這是因為缺少openssl 2.0以上版本
解決辦法:
一、先確認版本
openssl version
二、安裝依賴
如果已有,這步可以忽略
yum install gcc libffi-devel zlib* openssl-devel
三、下載高版本openssl
下載:
wget https://www.openssl.org/source/openssl-3.4.1.tar.gz
解壓:
tar -zxvf openssl-3.4.1.tar.gz
進入目錄:
?cd openssl-3.4.1
/usr/local/openssl 這個目錄要提前創建好
./config --prefix=/usr/local/openssl
四、編譯&安裝
編譯:
sudo make
安裝:
sudo make install
重新查看版本
openssl version
查看版本時如果出現
openssl: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or directory
使用以下兩個命令,建立連接即可
sudo ln -s /usr/local/openssl/lib64/libssl.so.3 /usr/lib64/libssl.so.3
sudo ln -s /usr/local/openssl/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3
安裝python
sudo yum update -y sudo yum groupinstall "Development Tools" -y sudo yum install openssl-devel bzip2-devel libffi-devel sqlite-devel zlib-devel -y #這是安裝相關依賴
cd /tmp wget https://www.python.org/ftp/python/3.11.11/Python-3.11.11.tgz #下載python
tar -xvf Python-3.11.11.tgz #解壓 cd Python-3.11.11 ./configure --enable-optimizations --prefix=/usr/local/python3 sudo make -j $(nproc) && make install #sudo 臨時提權 -j $(nproc)使用多核加速編譯
將Python 3和pip3添加到系統路徑: sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python3 sudo ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
如果之前安裝了其它的版本,有可能查詢版本時還顯示之前的版本,這時,需要在/usr/bin/中找到之前版本python3? 、 pip3的文件,刪除(先備份),再將新安裝的版本改為python3,如:
重命名,將python3.11改為python3即可,pip3同理。