Ubuntu18.04安装deadsnakes源时出现apt_pkg模块缺失错误如何解决
Ubuntu 18.04 Python3.8环境下安装Python3.10的报错解决方案
问题根因
Ubuntu 18.04默认的系统Python3版本是3.6,python3-apt包默认编译的模块只适配3.6版本,当你把全局Python3默认版本切换为3.8后,系统工具add-apt-repository调用Python3时就找不到对应版本的apt_pkg模块了。
修复步骤
- 第一步:安装Python3.8对应的apt绑定依赖包
sudo apt update sudo apt install python3.8-distutils python3.8-apt
- 第二步:如果上一步执行完成后仍然报模块缺失错误,手动创建
apt_pkg软链接
先进入系统Python第三方库目录,查看已有的apt_pkg编译文件:
cd /usr/lib/python3/dist-packages/ ls apt_pkg.*.so
执行后会输出类似apt_pkg.cpython-36m-x86_64-linux-gnu.so的文件名,使用该文件名创建适配Python3.8的软链接:
sudo ln -s apt_pkg.cpython-36m-x86_64-linux-gnu.so apt_pkg.so
- 第三步:继续完成Python3.10安装
此时再执行添加PPA源的命令就不会报错,后续按正常流程安装即可:
sudo add-apt-repository ppa:deadsnakes/ppa sudo apt update sudo apt install python3.10 python3.10-venv python3.10-dev
注意事项
- 不要随意修改
/usr/bin/python3的默认软链接指向,后续需要使用对应版本时直接执行python3.8、python3.10命令即可,避免破坏系统工具的Python依赖 - 如果需要在不同Python版本间切换,推荐使用
update-alternatives工具管理,不要直接修改系统级软链接
内容的提问来源于stack exchange,提问作者RTC222
相关产品推荐
相关产品推荐

