Ubuntu 18.04下将Python升级至3.9.2并设为默认版本的方法
Ubuntu 18.04 升级Python至3.9.2并设为系统默认版本操作步骤
前置准备:安装编译依赖
- 先更新系统包索引,升级现有组件
sudo apt update && sudo apt upgrade -y - 安装Python源码编译必需的依赖组件,缺这些组件的话,编译出来的Python会缺失SSL、zlib等核心功能,后续用pip装包时会直接报错
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev -y
下载并解压Python 3.9.2源码
- 切换到临时工作目录,避免污染源码目录
cd /tmp - 下载Python 3.9.2官方源码压缩包
wget https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tgz - 解压下载好的源码包
tar -zxvf Python-3.9.2.tgz - 进入源码目录准备编译
cd Python-3.9.2
编译并独立安装Python 3.9.2
注意:该步骤会将新版本Python安装到独立目录,不覆盖系统自带的3.7.9版本,避免破坏系统依赖
- 配置编译参数,开启性能优化,指定独立安装路径
./configure --enable-optimizations --prefix=/usr/local/python3.9 - 调用CPU全核心并行编译,缩短编译耗时
make -j $(nproc) - 执行安装流程
sudo make install
配置默认Python版本
通过Ubuntu系统自带的update-alternatives工具管理多版本切换,避免手动修改软链导致的系统故障:
- 将系统自带的Python 3.7.9注册到版本管理列表,设置优先级为1(低优先级)
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 1 - 将新装的Python 3.9.2注册到版本管理列表,设置优先级为2(高优先级)
sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/python3.9/bin/python3.9 2 - 如需将
python命令的默认指向也设置为3.9.2,补充注册配置项sudo update-alternatives --install /usr/bin/python python /usr/local/python3.9/bin/python3.9 2 - 执行版本切换校验,按照终端提示选择对应版本的优先级即可完成默认配置
sudo update-alternatives --config python3sudo update-alternatives --config python
结果验证
- 检查默认python3的版本,正常输出应为
Python 3.9.2python3 --version - 检查pip3关联路径,确认pip3指向新装的3.9.2版本目录
pip3 --version - 执行一次基础pip安装操作,确认无SSL依赖缺失等报错即说明安装完成
操作提示:全程不要删除或覆盖
/usr/bin目录下系统自带的Python 3.7可执行文件,该组件是apt包管理器、系统核心服务的依赖项,强行替换会导致系统工具运行异常。
内容的提问来源于stack exchange,提问作者bad_coder9042093
相关产品推荐
相关产品推荐

