You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用pip --user安装用户本地包时触发externally-managed-environment错误的求助

使用pip --user安装用户本地包时触发externally-managed-environment错误的求助

大家好,我之前一直靠pip install --user来安装Python包,这样就能绕开虚拟环境的繁琐配置,用着特别顺手。但最近换了Python版本后,这个方法突然失效了——执行命令直接弹出externally-managed-environment错误,实在摸不着头脑。

我执行的安装命令是:

$ pip install --user esphome

对应的错误输出如下:

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.12/README.venv for more information.
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider.
You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

当前我的Python和pip版本信息:

$ python3 --version
Python 3.12.3
$ pip3 --version
pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12)

以前用--user完全没出过问题,毕竟这个参数本来就是在非root权限下,把包安装到用户专属的本地目录里,根本不会干扰系统级的包。现在突然触发这个错误,想问问大家这是Python 3.12故意调整的行为,还是哪里出了bug?有没有不用冒险加--break-system-packages的稳妥解决办法?

火山引擎 最新活动