CentOS 7.x 系统安装Python 3.7.x
-
基础环境。
[root@monitor ~]# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core)
-
升级openssl。CentOS 7.6默认自带的openssl是1.0.2,需要升级到1.1.1,否则使用pip安装模块是会报错“pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available”。(如果是先装的Python,后升级的openssl,则升级完后需要重新编译Python)
[root@monitor ~]# openssl version OpenSSL 1.0.2k-fips 26 Jan 2017 # 安装依赖。如果是CentOS 6.x的系统需要安装xz,否则下面解压Python压缩包会报错。 [root@monitor ~]# yum -y install gcc xz # 下载新版本的openssl [root@monitor ~]# cd /usr/local/src [root@monitor src]# wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz [root@monitor src]# tar xf openssl-1.1.1c.tar.gz [root@monitor src]# cd openssl-1.1.1c/ [root@monitor openssl-1.1.1c]# ./config shared --prefix=/usr/local/openssl [root@monitor openssl-1.1.1c]# make && make install # 备份原来的openssl,并为新版本的openssl创建软链接。 [root@monitor openssl-1.1.1c]# mv /usr/bin/openssl{,.bak} [root@monitor openssl-1.1.1c]# mv /usr/include/openssl{,.bak} [root@monitor openssl-1.1.1c]# ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl [root@monitor openssl-1.1.1c]# ln -s /usr/local/openssl/include/openssl /usr/include/openssl [root@monitor openssl-1.1.1c]# ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/local/lib64/libssl.so # 写入openssl库文件的搜索路径,并使之生效。 [root@monitor openssl-1.1.1c]# echo "/usr/local/openssl/lib" >>/etc/ld.so.conf.d/openssl.conf [root@monitor openssl-1.1.1c]# ldconfig [root@monitor openssl-1.1.1c]# openssl version OpenSSL 1.1.1c 28 May 2019
-
下载Python 3.7.x的tar包,并解压。
[root@monitor openssl-1.1.1c]# cd /usr/local/src/ [root@monitor src]# wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tar.xz [root@monitor src]# tar xf Python-3.7.2.tar.xz [root@monitor src]# cd Python-3.7.2/
-
编译安装。
# 安装依赖包。 [root@monitor Python-3.7.2]# yum -y install zlib-devel libffi-devel readline-devel sqlite-devel tk-devel bzip2-devel python-devel openssl-devel xz-devel [root@monitor Python-3.7.2]# ./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl --enable-shared --enable-optimizations [root@monitor Python-3.7.2]# make && make install # 写入库搜索路径,并使之生效。 [root@monitor Python-3.7.2]# echo "/usr/local/python3/lib" >>/etc/ld.so.conf.d/python3.conf [root@monitor Python-3.7.2]# ldconfig # 添加软链 [root@monitor Python-3.7.2]# ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3 [root@monitor Python-3.7.2]# ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3
-
测试pip安装requests模块。
[root@monitor Python-3.7.2]# pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple [root@monitor Python-3.7.2]# pip3 install requests
写作不易,转载请注明出处,谢谢~~