下载并安装 最新的openssl包, 因为 python3.8 需要使用 1.1 以上的包, 否则访问ssl 地址会报错
wget http://distfiles.macports.org/openssl/openssl-1.1.1d.tar.gz
tar -zxvf openssl-1.1.1d.tar.gz
cd openssl-1.1.1d
./config --prefix=/usr/local/python3 shared zlib && make && make install
可能会遇到有些包不存在, 导致编译失败的问题, 以下是我遇到不存在的包的安装方法
yum -y install gcc automake autoconf libtool make
yum install zlib-devel
- 下载 3.8 的 软件包
wget https://npm.taobao.org/mirrors/python/3.8.0/Python-3.8.0.tar.xz
- 解压
tar -xf Python-3.8.0.tar.xz
- 编译
cd Python-3.8.0
./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/python3 --with-http_ssl_module && make && make install
- 备份 2.7
mv /usr/bin/python /usr/bin/python_2.7
- 软链
ln -sv /usr/local/python3/bin/python3.8 /usr/bin/python
- 验证
输入 python, 查看是否已经升级到 3.8 版本。
- 解决升级后, yum 无法正常使用的问题
vi /usr/libexec/urlgrabber-ext-down
将顶部的 /usr/bin/python 改为 /usr/bin/python2
vi /usr/bin/yum
将顶部的 /usr/bin/python 改为 /usr/bin/python2