关于 sysconfig 的 python easy_install 或 pip 错误

关于 sysconfig 的 python easy_install 或 pip 错误

不知何故,我的 linux OEL 6.9 中的 python 安装被破坏了。

pip 或 easy_install 已损坏,我无能为力。

我两边都得到同样的错误:

# easy_install
Traceback (most recent call last):
  File "/usr/bin/easy_install", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python2.6/site-packages/setuptools-39.2.0-py2.6.egg/pkg_resources/__init__.py", line 947, in <module>
    class Environment(object):
  File "/usr/lib/python2.6/site-packages/setuptools-39.2.0-py2.6.egg/pkg_resources/__init__.py", line 951, in Environment
    self, search_path=None, platform=get_supported_platform(),
  File "/usr/lib/python2.6/site-packages/setuptools-39.2.0-py2.6.egg/pkg_resources/__init__.py", line 180, in get_supported_platform
    plat = get_build_platform()
  File "/usr/lib/python2.6/site-packages/setuptools-39.2.0-py2.6.egg/pkg_resources/__init__.py", line 380, in get_build_platform
    from sysconfig import get_platform
ImportError: No module named sysconfig

我删除了 python-setuptools 但无济于事。

我想我正在尝试更新最新版本的 pyOpenSSL,但它崩溃了并且无法修复。

我们在虚拟机中运行 Oracle enterprise Linux 6.6。

如何在不安装官方存储库中未包含的 python 2.7 的情况下修复它

谢谢

答案1

解决方案是:

完全删除python-setuptools并从 /usr/lib/python2.6/site-packages/ 中删除该文件夹。

然后从 site-packages 文件夹中手动删除模块: pyOpenSSL 在尝试升级它之后,一切都出了问题。

rm -rf pyOpenSSL-18.0.0-py2.6.egg/

现在从 yum 安装回来python-setuptools pip list 可以列出模块,并且不再出现easy_install任何错误。

答案2

好的,setuptools现在应该安装了 - 你能确认你有这个pkg_resources.py模块吗?跑步ls /usr/lib/python2.6/site-packages/pkg_resources.py; echo $?

如果此命令输出 0,则删除pkg_resources package: sudo rm -rf /usr/lib/python2.6/site-packages/pkg_resources/.

pkg_resources仅当找到模块时才删除该目录!之后,pip 应该再次工作:运行 smth likepip list来检查。

别的

跑步:

python3 -m ensurepip --default-pip

pip3 install [package]

相关内容