我正在尝试安装 pycairo。我对环境不太了解,我只是想写一个有趣的程序:)
这是我得到的错误:
错误:外部管理环境
× 该环境由外部管理 ╰─> 要在系统范围内安装Python包,请尝试brew install xyz,其中 xyz 是您要尝试的包 安装。
If you wish to install a Python library that isn't in Homebrew,
use a virtual environment:
python3 -m venv path/to/venv
source path/to/venv/bin/activate
python3 -m pip install xyz
If you wish to install a Python application that isn't in Homebrew,
it may be easiest to use 'pipx install xyz', which will manage a
virtual environment for you. You can install pipx with
brew install pipx
You may restore the old behavior of pip by passing
the '--break-system-packages' flag to pip, or by adding
'break-system-packages = true' to your pip.conf file. The latter
will permanently disable this error.
If you disable this error, we STRONGLY recommend that you additionally
pass the '--user' flag to pip, or set 'user = true' in your pip.conf
file. Failure to do this can result in a broken Homebrew installation.
Read more about this behavior here: <https://peps.python.org/pep-0668/>
注意:如果您认为这是一个错误,请联系您的 Python 安装或操作系统分发提供商。您可以通过传递 --break-system-packages 来覆盖此设置,但可能会破坏 Python 安装或操作系统。
Soo...我通过使用教程和 Stackoverflow 尝试了很多不同的方法,但我仍然陷入困境。 通常阅读这里其他人的问题会有帮助,但这次没有。
这基本上意味着您的包由其他事物(可能是 apt)管理,并且您收到此错误是为了避免通过在 pip 和 apt 之间创建冲突来破坏事物。
您可以通过执行以下指令来解决此问题:
python3 -m venv path/to/venv
source path/to/venv/bin/activate
python3 -m pip install xyz
这里
path/to/venv
是您希望环境所在的位置,xyz
是您要安装的库。
如果你不在乎,你可以简单地在 pip install 命令中添加
--break-system-packages
我的输入是:pip3 install pycairo 我当时想:
pip3 install pycairo
然后:
默认为用户安装,因为普通站点包不可写 收集 pycairo 使用缓存的 pycairo-1.26.0.tar.gz (346 kB) 安装构建依赖项...完成 获取制造轮子的要求...完成 安装后端依赖项...完成 准备元数据 (pyproject.toml) ...完成 为收集的包构建轮子:pycairo pycairo 的构建轮 (pyproject.toml) ...错误 错误:子进程退出并出现错误
× pycairo 的构建轮(pyproject.toml)未成功运行。 │ 退出代码:1 ╰─>【12行输出】 运行 bdist_wheel 运行构建 运行build_py 创建构建 创建 build/lib.macosx-10.9-universal2-cpython-312 创建 build/lib.macosx-10.9-universal2-cpython-312/cairo 复制 cairo/init.py -> build/lib.macosx-10.9-universal2-cpython-312/cairo 复制 cairo/init.pyi -> build/lib.macosx-10.9-universal2-cpython-312/cairo 复制 cairo/py.typed -> build/lib.macosx-10.9-universal2-cpython-312/cairo 运行 build_ext 未找到“pkg-config”。 命令 ['pkg-config', '--print-errors', '--exists', 'cairo >= 1.15.10'] [输出结束]
注意:此错误源自子进程,并且可能不是 pip 的问题。 错误:pycairo 构建轮子失败 构建 pycairo 失败 错误:无法为 pycairo 构建轮子,这是安装基于 pyproject.toml 的项目所必需的