本文鏈接:https://www.cndba.cn/zhasir/article/3467
Python 3.7.1在CentOS 6.1
1.部署環境
操作系統:CentOS release 6.10 (Final)
OpenSSL版本:OpenSSL 1.0.1e-fips 11 Feb 2013
2.介質獲取
Python下載地址:https://www.python.org/
OpenSSL下載地址:https://www.openssl.org/source/
下載獲得的安裝介質包如下:
Python-3.7.1.tgz
openssl-1.1.1a.tar.gz
3.Python安裝
3.1.安裝RPM
yum -y install zlib zlib-devel
yum -y install bzip2 bzip2-devel
yum -y install ncurses ncurses-devel
yum -y install readline readline-devel
yum -y install openssl openssl-devel
yum -y install openssl-static
yum -y install xz lzma xz-devel
yum -y install sqlite sqlite-devel
yum -y install gdbm gdbm-devel
yum -y install tk tk-devel
yum -y install libffi libffi-devel
3.2.升級OpenSSL
由於系統自帶的OpenSSL版本過低,會導致pip命令後期無法正常使用,所以需要進行OpenSSL升級。由於官方推薦1.1.1版本,所以本次升級的便採用的是該版本。
1) 解壓安裝包
# tar -xvf openssl-1.1.1a.tar.gz
2) 編譯源碼,指定安裝位置
# cd openssl-1.1.1a
# ./config --prefix=/usr/local/openssl
3) 安裝
make && make install
4) 創建鏈接
# mv /usr/bin/openssl /usr/bin/openssl.old
# mv /usr/include/openssl /usr/include/openssl.old
# mv /usr/lib64/libssl.so /usr/lib64/libssl.so.old
# ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
# ln -s /usr/local/openssl/include/openssl /usr/include/openssl
# ln -s /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so
5) 建立動態鏈接
# echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
# ldconfig -v
6) 查看opensll版本
# openssl version
OpenSSL 1.1.1a 20 Nov 2018
3.3.安裝Python
1) 解壓安裝包
# tar -xvf Python-3.7.1.tgz
2) 編譯源碼,指定安裝位置
# cd Python-3.7.1
# ./configure --prefix=/usr/local/python3 --enable-shared CFLAGS=-fPIC --with-openssl=/usr/local/openssl
3) 安裝
# make && make install
4) 配置環境變量
# vim /etc/profile
追加如下內容:
export PATH=$PATH:/usr/local/python3/bin
# source /etc/profile
5) 測試Python3
# python3
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
4.報錯處理
4.1.pip3無法使用
錯誤信息:
/usr/local/python3/bin/python3.7: error while loading shared libraries: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory
處理辦法:
# find / -name libpython3.7m.so.1.0
/usr/local/python3/lib/libpython3.7m.so.1.0
# cd /etc/ld.so.conf.d
# vim python3.conf
添加如下內容如下:
/usr/local/python3/lib/
# ldconfig
測試pip3是否可以正常使用,列出內容則正常
# pip3 list
Package Version
---------- -------
pip 10.0.1
setuptools 39.0.1