Venv 在 CentOS 中失败,确保缺少 pip

Venv fails in CentOS, ensurepip missing

我正在尝试在 python3(在 CentOS 上)安装 venv。但是我收到以下错误:

Error: Command '['/home/cleared/Develop/test/venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.

我猜我的 ensurepip 有问题...

运行 python3 -m ensurepip 结果

FileNotFoundError: [Errno 2] No such file or directory: '/usr/lib64/python3.6/ensurepip/_bundled/pip-9.0.3-py2.py3-none-any.whl'

我在 /usr/lib64/python3.6/ensurepip/_bundled/ 中查找 pip-18.1-py2.py3-none-any.whlsetuptools-40.6.2-py2.py3-none-any.whl,但是没有 pip-9.0.3-py2.py3-none-any.whl

运行 pip3 --version 给出

pip 20.0.1 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)

为什么它在寻找 pip-9.0.3-py2.py3-none-any.whl 而我 运行 pip 20.0.1,为什么我有 pip-18.1-py2.py3-none-any.whl?我该如何解决这个问题?

这些版本在 ./lib/python3.8/ensurepip/__init__.py 的开头进行了硬编码。您可以使用正确的文件编辑此文件。

关于这个腐败的原因,我只能猜测。我敢打赌在安装这个解释器的过程中会遇到一个问题。

我会使用您操作系统的包管理器 (yum?) 彻底重新安装 Python(可能还有它的一些依赖项)。