error
pip
config_error
ai_generated
true
error: externally-managed-environment × This environment is externally managed ╰─> To install Python packages system-wide, try apt install python3-xyz, where xyz is the package you are trying to install. If you wish to install a non-Debian-packaged Python package, create a virtual environment using python3 -m venv path/to/venv. Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make sure you have python3-full installed. If you wish to install a non-Debian packaged Python application, it may be easiest to use pipx install xyz, which will manage a virtual environment for you. Make sure you have pipx installed. See /usr/share/doc/python3.11/README.venv for more information.
ID: pip/externally-managed-environment-full-message
95%Fix Rate
92%Confidence
1Evidence
2023-05-01First Seen
Version Compatibility
| Version | Status | Introduced | Deprecated | Notes |
|---|---|---|---|---|
| pip 23.0 | active | — | — | — |
| pip 23.1 | active | — | — | — |
| pip 23.2 | active | — | — | — |
| pip 24.0 | active | — | — | — |
Root Cause
The Python environment is marked as externally managed (e.g., on Debian/Ubuntu systems with PEP 668 support), preventing pip from installing packages system-wide to avoid conflicts with the system package manager.
generic中文
Python 环境被标记为外部管理(例如,在支持 PEP 668 的 Debian/Ubuntu 系统上),阻止 pip 系统范围安装包,以避免与系统包管理器冲突。
Official Documentation
https://peps.python.org/pep-0668/Workarounds
-
95% success Create and use a virtual environment: 'python3 -m venv /path/to/venv' then 'source /path/to/venv/bin/activate' and install packages inside it.
Create and use a virtual environment: 'python3 -m venv /path/to/venv' then 'source /path/to/venv/bin/activate' and install packages inside it.
-
90% success Use pipx for installing CLI applications: 'pipx install <package>'.
Use pipx for installing CLI applications: 'pipx install <package>'.
中文步骤
创建并使用虚拟环境:'python3 -m venv /path/to/venv',然后 'source /path/to/venv/bin/activate',在虚拟环境中安装包。
使用 pipx 安装 CLI 应用程序:'pipx install <package>'。
Dead Ends
Common approaches that don't work:
-
50% fail
This can break the system Python installation and cause conflicts with apt-managed packages, leading to system instability.
-
60% fail
This removes the protection entirely and may cause the same issues as --break-system-packages; also, updates to the python3 package may restore the file.