如何仅在系统 pip/python 支持时有条件地应用`--break-system-packages`?

问题描述 投票:0回答:1

我正在调整我的 pip 命令以适应较新版本的 Ubuntu(支持 PEP 668)。在所有选项中,到目前为止(在我的具体用例中)唯一有效的一个是

在 pip 末尾使用 --break-system-packages

此答案所示。也就是说,改变

sudo pip install xyz

sudo pip install xyz --break-system-packages

。这适用于较新版本的 Ubuntu,但会导致较旧版本的 Ubuntu (22.04 LTS) 出现错误,无法识别

--break-system-packages
选项。 pip 的错误消息是:

没有这样的选项:--break-system-packages

pip --version
显示:

pip 22.0.2 来自 /usr/lib/python3/dist-packages/pip (python 3.10)

如何在 pip 命令周围添加条件,以便仅当 pip/python 版本足够高以识别它时才使用

--break-system-packages
选项?

python pip
1个回答
0
投票

您可以设置环境变量而不是使用

--break-system-packages

PIP_BREAK_SYSTEM_PACKAGES=1 pip install xyz
应该适用于新闻和旧版本的 pip

© www.soinside.com 2019 - 2024. All rights reserved.