Centos7安装Python3.8
1、安装
1.1、安装相应的编译工具
在root用户下(不要用普通用户,麻烦),全部复制粘贴过去,一次性安装即可.
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum install -y libffi-devel zlib1g-dev
yum install zlib* -y
yum install -y gcc gcc-c++ python-devel wget
1.2、下载安装包
1.2.1、官方下载
官方下载后上传Linux系统解压: 下载地址
1.2.2、直接在linux上下载
wget https://www.python.org/ftp/python/3.8.3/Python-3.8.3.tgz
1.3、创建编译安装目录
mkdir -p /usr/local/python3
1.4、解压python文件
tar -zxvf Python-3.8.3.tgz -C /usr/loca/python3
1.5、编译安装
cd /usr/loca/python3/Python-3.8.3
#指定编译语言
export LANG=zh_CN.UTF-8
export LANGUAGE=zh_CN.UTF-8
./configure --prefix=/usr/local/python3 --enable-optimizations --with-ssl=/usr/local/openssl
或(主要看/usr/local/openssl是否存在)
./configure --prefix=/usr/local/python3 --enable-optimizations --with-ssl
#第一个指定安装的路径,不指定的话,安装过程中可能软件所需要的文件复制到其他不同目录,删除软件很不方便,复制软件也不方便.
#第二个可以提高python10%-20%代码运行速度.
#第三个是为了安装pip需要用到ssl,后面报错会有提到.
make && make install
#清理临时文件
make clean
1.6、创建软链接
ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3
1.7、修改pip源
cat > /etc/pip.conf << EOF
[global]
trusted-host = mirrors.aliyun.com
index-url = http://mirrors.aliyun.com/pypi/simple/
[list]
format=columns
EOF
1.8、添加python本地环境,pip升级
echo export PATH="/usr/local/python3/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
pip3 install --upgrade pip==20.2.4
1.9、验证是否成功
python3 -V
pip3 -V
2、安装python3.8中存在的问题
2.1、编译安装python3的时候遇到No module named '_ssl’的问题
# 1. 查看当前openssl的版本信息
openssl version -a
# 2. 安装对应的依赖库
yum install -y zlib zlib-dev openssl-devel sqlite-devel bzip2-devel libffi libffi-devel gcc gcc-c++
# 3. 下载openssl安装文件
cd /usr/local/src
wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz
# 4. 解压安装openssl,并进入openssl的目录
tar -zxvf openssl-1.1.1.k.tar.gz
cd openssl-1.1.1.k
./config --prefix=/usr/local/openssl shared zlib
make && make install
# 5. 备份当前openssl
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak
# 6. 配置使用新版本
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
# 7. 更新动态链接库数据并重新加载
echo /usr/local/openssl/lib >> /etc/ld.so.conf
ldconfig -v
# 8. 查看是否升级成功
openssl version
# 9. 如果缺少libssl.s0.1.1
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
2.2、make遇错误
错误问题:make: *** [pybuilddir.txt] 错误 1
解决方法:
在 ./configure 操作前,先进行配置
export LANG=zh_CN.UTF-8
export LANGUAGE=zh_CN.UTF-8