目录

openEuler升级Python

概述

因为需要在宿主机直接安装一些 Python 的依赖,以及运行一些 Github 的参考代码,因此需要升级 Python,当前使用的操作系统版本为 openEuler 22.03 LTS,默认的 Python 版本是 Python3.9,目标是升级到 Python3.10.6,下面是具体的操作流程。

升级

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
sudo wget https://www.python.org/ftp/python/3.10.6/Python-3.10.6.tgz
sudo tar xzf Python-3.10.6.tgz
cd Python-3.10.6
sudo ./configure --enable-optimizations
sudo make altinstall
python3.10 --version
python3.10 -m ensurepip --upgrade
python3.10 -m pip install --upgrade pip
rm -rf /usr/bin/python3
sudo ln -s /usr/local/bin/python3.10 /usr/bin/python3

rm -rf /usr/bin/python3
sudo ln -s /usr/bin/python3.9 /usr/bin/python3

回滚

如果安装有任务问题,服务器外网正常的话,可以通过 rpm 来快速恢复。

1
rpm -ivh --replacefiles --force --nodeps https://repo.openeuler.org/openEuler-22.03-LTS/OS/x86_64/Packages/python3-3.9.9-7.oe2203.x86_64.rpm

关于Conda

在 openEuler 22.03 LTS 环境使用 Python3.10,以上的版本,还是建议通过 Conda 来使用,因为操作系统有很多配置跟 Python3.9 做了绑定,比如最基础的 dnf, yum 这些命令,如果只是简单升级 Python3.10.6,可能会遇到很多问题。

1
2
3
4
5
6
7
curl -LO https://repo.anaconda.com/miniconda/Miniconda3-py310_23.3.1-0-Linux-x86_64.sh
bash Miniconda3-py310_23.3.1-0-Linux-x86_64.sh -b -p /opt/miniconda -f
echo 'export PATH="/opt/miniconda/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
conda create -n py3.10.6 python=3.10.6
conda init bash
conda activate py3.10.6

参考资料

  1. python3.10 No module named ‘_sqlite3
注意
本文最后更新于 2024年4月4日,文中内容可能已过时,请谨慎参考。