PEP668简介
平常使用python较少,安装组件一直是直接pip安装,最近因为在统信os上使用打包的python,又在其它设备上测试,遇上了PEP668。
什么是PEP668
PEP 668 是 Python 的一项规范,用于将系统全局 Python 环境标记为“外部管理”,以避免 pip 与操作系统包管理器之间的冲突。
PEP 668 提出了一种机制,让 Python 安装向 pip 等工具传达其全局包安装环境由操作系统或其他外部方式管理,而不是由 Python 自身管理。
PEP668错误

在新版 Ubuntu 或其他 Linux 发行版中,当尝试在系统全局 Python 环境中使用 pip 安装包时,可能会看到类似:
error: externally-managed-environment
的错误提示。
解决方法
- 使用venv
1 | sudo apt install python3-venv |
此时在提示符前会出现(myenv)。

- 使用系统包管理器
对于系统级安装,优先使用操作系统提供的包管理器(如 apt install python3-xxx),而不是 pip。python3-tk,python3-qt5都是这样安装。
- 强制安装
可以通过 pip 的 –break-system-packages 参数绕过 PEP 668,但可能影响系统稳定性,应谨慎使用。
- 使用pipx
1 | sudo apt install pipx |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 折腾日记!
评论




