關於 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]

相關內容