簡體   English   中英

導入錯誤:沒有名為 sysconfig 的模塊——無法讓 pip 工作

[英]ImportError: No module named sysconfig--can't get pip working

我真的在 RedHat 6.9 系統上與 pip 苦苦掙扎。 每次我嘗試使用 pip 時,我都會得到

ImportError: No module named sysconfig

我嘗試谷歌搜索解決方案。 我沒有 apt-get 並且似乎無法通過 yum 獲得它,因此清除 setuptools 是不可能的。 我盡力手動刪除 setuptools 以便我可以重新安裝它們,但是 yum 確信機器上仍然有 setuptools。

幾乎所有涉及使用 yum 下載內容的建議對我都不起作用。 百勝總是說找不到我要找的東西。 因此,如果有一種方法可以在沒有 yum 或 apt-get 的情況下下載某些內容(例如,不通過終端),那可能是最好的。

我的機器上有 Python 3 和 Python 2,所以我不知道這是否會改變你們給我的建議。

1000 感謝任何可以提供幫助的人! 現在我只能通過 anaconda 接口(例如 Jupyter notebooks 和 Spyder)來完成工作,這真的很有限。

編輯:這是我的錯誤跟蹤:

Traceback (most recent call last):

  File "/usr/bin/pip2", line 5, in <module>

    from pkg_resources import load_entry_point

  File "/usr/lib/python2.6/site-packages/pkg_resources/__init__.py", line 947, in <module>

    class Environment(object):

  File "/usr/lib/python2.6/site-packages/pkg_resources/__init__.py", line 951, in Environment

    self, search_path=None, platform=get_supported_platform(),

  File "/usr/lib/python2.6/site-packages/pkg_resources/__init__.py", line 180, in get_supported_platform

    plat = get_build_platform()

  File "/usr/lib/python2.6/site-packages/pkg_resources/__init__.py", line 380, in get_build_platform

    from sysconfig import get_platform

ImportError: No module named sysconfig

編輯 2: @hoefling 要求我發布以下命令的輸出; 第一的:

$ yum list installed | grep setuptools
*Note* Red Hat Network repositories are not listed below. You must run this command as root to access RHN repositories.
python-setuptools.noarch     0.6.10-4.el6_9      @ncep-base-x86_64-workstation-6

和:

$ grep ^Version: /usr/lib/python2.6/site-packages/setuptools-*.egg-info/PKG-INFO
grep: /usr/lib/python2.6/site-packages/setuptools-*.egg-info/PKG-INFO: No such file or directory

我在 redHat 服務器 6.9 上使用 python2.6 遇到了同樣的錯誤:

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

我刪除了 :

rm /usr/lib/python2.6/site-packages/pkg_resources*

我重新安裝了 python-setuptools

yum reinstall python-setuptools

修復后:

pip --version
pip 7.1.0 from /usr/lib/python2.6/site-packages (python 2.6)

試試

python3 -m ensurepip --default-pip

然后做

pip3 install [package]

這將指示 python 使用 pip3

我在 Cent6.9 上遇到了完全相同的問題,這里的說明並沒有完全解決問題。 修復同樣的問題,我需要備份我的整個 /usr/lib/python2.6/ 文件夾,並將它們復制到一個只有 yum、urlgrabber 和 rpmUtils 模塊的新文件夾中(否則 yum 會中斷)。

請記住,此修復程序可能會嚴重破壞您的系統(通過破壞 yum 或刪除正在使用的 Python 模塊)。 這將卸載每個 python 模塊。 這也將卸載python34!

cd /usr/lib/
cp -a python2.6 python2.6-bak
cd /usr/lib/python2.6
rm -rf ./* #ow
cp -a /usr/lib/python2.6-bak/site-packages/yum /usr/lib/python2.6/
cp -a /usr/lib/python2.6-bak/site-packages/urlgrabber /usr/lib/python2.6/
cp -a /usr/lib/python2.6-bak/site-packages/rpmUtils /usr/lib/python2.6/
rpm -qa | grep python34 | xargs yum -y erase
rpm -qa | grep python | xargs yum -y reinstall
yum -y reinstall python-setuptools python2-setuptools python-pip

這里

當我遇到這個時,它是由 /usr/lib/python2.6/site-packages/pkg_resources/ 與 /usr/lib/python2.6/site-packages/pkg_resources.py 沖突引起的。 擦除目錄允許一切像以前一樣工作。 我認為 pip install 是原因,但不知道是哪個包。

也幫助了我 - rm -rf /usr/lib/python2.6/site-packages/pkg_resources使用風險自負! )。

嘗試這個

完全刪除python-setuptools並從/usr/lib/python2.6/site-packages/刪除文件夾。

然后從site-packages文件夾中手動刪除模塊: pyOpenSSL在嘗試升級它之后,一切都向南了。

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

從 sudo python-setuptools安裝回現在pip list可以列出模塊,並且使用easy_install也不會再出現錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM