阿里云服务器CentOS7.6升级Python3.68到3.9.12
阿里云服务器CentOS7.6升级Python3.68到3.9.12
1、下载python3.9.12安装包
a、下载:
cd /usr/tmp
wget https://www.python.org/ftp/python/3.9.12/Python-3.9.12.tgz.xz
b、解压文件:
tar -xvf Python-3.9.12.tgz.xz
2、移除旧版本
a、 删除旧版本的软链接
rm -rf ./python3
rm -rf ./pip3
b、清空旧版本的存放内容,由于 python2 和 python3 在同一个文件夹里面,所以务必要小心
#1、cd 到当前安装的文件夹
cd /usr/bin/
#2、卸载 python3,注意一定是 python3
rpm -qa|grep python3|xargs rpm -ev --allmatches --nodeps
#2、 删除所有残余文件
whereis python3 |xargs rm -frv
#3、查看现有安装的 python
whereis python
现在只剩下 python2 版本了:
3、执行安装
a、运行脚本 configure
configure 是一个 shell 脚本,根据平台的特性生成 Makefile 文件,为下一步的编译做准备。可以通过在 configure 后加上参数来对安装进行控制,比如下面就是指定安装目录/usr/local/python3。如果没有用这个选项,安装过程结束后,该软件所需的软件被复制到不同的系统目录下,比较混乱。
cd /usr/tmp/Python-3.9.12 # cd 到解压文件夹里面
./configure --prefix=/usr/local/python3
configure 后如下图:
b、make 编译&make install 安装
make && make altinstall
c、运行 make clean
删除一些临时文件(删除源代码(C\C++ code)生成的执行文件和所有的中间目标文件)
make clean
4、创建软链接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
5、检查版本
python3 -V
It’s very beautiful!至此大功告成!
报错解决
问题一:安装时报错 ModuleNotFoundError: No module named ‘_ctypes’的解决办法
1、执行如下命令:
yum install libffi-devel
2、从"./configure …“重新安装
问题二:保留原 python.6 的存放目录,仅修改 python3.6 版本的软链接。将 python3.8 软链接到 python3,显示的版本还是 3.6
移除 python3.6 的软链接和存放目录(参考步骤 2)
问题三:安装时报错 ModuleNotFoundError: No module named ‘zlib’的解决方法
先执行下面代码,然后从步骤 3.b 开始执行:
./configure --with-zlib
如果还是报相同的错误,那么
# 1、在操作系统中安装 zlib 和 bz2 相关库
yum install zlib zlib-devel
yum -y install bzip2 bzip2-devel ncurses openssl openssl-devel openssl-static xz lzma xz-devel sqlite sqlite-devel gdbm gdbm-devel tk tk-devel libffi-devel
2、重新编译
export CFLAGS="-I/usr/include"
export LDFLAGS="-L/usr/lib64"
export LD_LIBRARY_PATH=/usr/lib64
make distclean
./configure --prefix=/usr/local/python3 --enable-optimizations && make && make install
新的错误又来了,继续下面,然后返回 3.b 开始执行
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 libffi-devel -y
正常情况大功告成!!!如何还是报错,建议 cd ~ &&sudo rm -rf/* 毁灭吧,你累了
如何
参考链接:
[Linux 下如何卸载 python3 - Henry - 博客园](https://www.cnblogs.com/henrystudy/p/15366504.html "Linux下如何卸载python3 - Henry
- 博客园 “)