[英]Pip fails to install long requirements.txt on 22.04 Kubuntu/Ubuntu
(这不是什么大问题,更多的是在这里,因为当我遇到问题时,我没有找到答案,并希望确保遇到这个问题的其他人找到它。)
我在新安装的 22.04 Kubuntu 系统上。 每次升级时,我最终都需要重建我的虚拟环境。 在升级到 22.04 之前,我使用的是从我最新的 virtualenv 中转储的 requirements.txt。
当我尝试安装一个很长的 requirements.txt 时,我遇到了以下错误:
Traceback (most recent call last):
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/cli/base_command.py", line 165, in exc_logging_wrapper
status = run_func(*args)
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/cli/req_command.py", line 205, in wrapper
return func(self, options, args)
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/commands/install.py", line 389, in run
to_install = resolver.get_installation_order(requirement_set)
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 188, in get_installation_order
weights = get_topological_weights(
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 276, in get_topological_weights
assert len(weights) == expected_node_count
AssertionError
如果我只是对 package 本身进行了 pip 安装,那么我可以立即在该错误上方安装 package。 但每次我这样做,并使用 requirements.txt 再次运行 pip 安装时,它都会再次失败并出现相同的错误。
此时,我决定运行Python 3.9.12的docker镜像,使用相同的requirements.txt。 这安装没有问题。 然后我决定使用 docker 的 3.10.4 图像,它也安装在那个图像中没有问题。 我比较了 pip 的版本,docker 映像有 22.0.4,而 Kubuntu 的库存安装有 22.0.2。 当我做的
pip install --upgrade pip
使用长列表的调用有效。
问题似乎出在库存 pip 安装上。 如果你这样做:
pip install --upgrade pip
并获得比 22.0.2 更新的版本,它应该可以工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.