- 手动下载 Python-3.10.9.tar.xz(官网或其他方式自行选择,存储位置随意)
- 进入到压缩包放置的目录,解压刚下载的压缩包
tar -xvf Python-3.10.9.tar.xz
-
进入刚解压出来的目录
cd Python-3.10.9/
-
创建 Python-3.10.9想要安装的位置(这里的位置和目录名都根据自己习惯起就好)
mkdir /usr/local/python3.10.9
-
如果需要安装 ssl
编辑安装文件vim ./Modules/Setup
调整安装文件内容
-
如果需要用到 python3 的 sqlite3,先安装 sqlite3
# 到 https://www.sqlite.org/downloadhtml 下载 sqlite-autoconf-3430100.tar.gz # 解压 sqlite-autoconf-3430100.tar.gz tar -xzvf sqlite-autoconf-3430100.tar.gz # 进入到解压的目录(根据自己的目录调整命令内容) cd /home/hlsq/setup/sqlite-autoconf-3430100 # 配置 ./configure # 编译并安装 make && make install # 默认安装到 /usr/local/bin、/usr/local/include 记住这两个路径
-
安装Python3.10.9
● 仅安装Python的这样操作:# 这里用 --prefix 指定安装位置,也就是上一步里创建的目录 ./configure --with-ssl --prefix=/usr/local/python3.10.9 # 编译 make # 安装 make install
● 需要同时配置 sqlite3 的这样操作:
# 配置 LD_RUN_PATH=/usr/local/lib ./configure LDFLAGS="-L/usr/local/lib" CPPFLAGS="-I/usr/local/include" --with-ssl --prefix="/usr/local/python3.10.9" # 编译 LD_RUN_PATH=/usr/local/lib make # 编译并安装 make && make install
-
调整python命令的软链接
# 进入python软链接所在目录 cd /usr/bin/ # 查找现有的关于python的内容 ll |grep python
这里是我的查询结果(调整后的,调整前忘记截图了)
因为我这里原 python 的软件链接,就是 python2,所以就没有备份原有的 python,而是直接删除后重建的软链接
# 创建新的 Python3 的软链接,这里是把刚安装的python3链接到命令python ln -s /usr/local/python3.10.9/bin/python3 /usr/bin/python
-
此时再查看python版本,就是新的版本了
如果需要验证 sqlite3 是否安装好的话python -c "import sqlite3; print(sqlite3.sqlite_version)" # 输出 3.43.1 即可
-
但是更新过程并没有完成,因为yum需要使用Python2,所以还需要调整yum的调用
# 编辑yum,把第一行的 " #!/usr/bin/python " 调整为 " #!/usr/bin/python2 " vim /usr/bin/yum # 编辑 urlgrabber-ext-down,把第一行的 " #!/usr/bin/python " 调整为 " #!/usr/bin/python2 " vim /usr/libexec/urlgrabber-ext-down # 编辑 yum-config-manager,把第一行的 " #!/usr/bin/python -tt " 调整为 " #!/usr/bin/python2 -tt " vim /usr/bin/yum-config-manager
-
创建Python3.10对应版本的pip软链接
# 新的 pip3 在新安装的Python目录下的bin目录下 ln -s /usr/local/python3.10.9/bin/pip3 /usr/bin/pip # 以下操作根据需要自行选择,不是必须的操作 # 更换 pip源(永久更换) # 清华源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple # 阿里源 pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/ # 腾讯源 pip config set global.index-url http://mirrors.cloud.tencent.com/pypi/simple # 豆瓣源 pip config set global.index-url http://pypi.douban.com/simple/ # 换回默认源 pip config unset global.index-url
-
将新的 python 的 bin加到环境变量(尤其是需要用到 torchrun 命令的,又不想配置虚拟环境的)
(1)编辑 .bash_profilevim ~/.bash_profile
(2)在PATH中追加刚刚安装的 python 的 bin 目录
(3)激活刚刚的配置source /etc/profile
-
至此,Python的更新全部完成(我这安装完成后重启了一次,不然运行有些程序还是会报错)
随手记:CentOS 7 手动更新 Python 3.10.9
于 2023-09-14 16:07:10 首次发布