1. 程式人生 > >pip命令報錯:ImportError: No module named sysconfig

pip命令報錯:ImportError: No module named sysconfig

注:本文基於CentOS 6.5編寫,python版本為Python 2.6.6

背景

在CentOS 6.5上要使用supervisor的緣故,因此需要升級setuptools模組,快快樂樂的執行了以下命令:

pip install setuptools --upgrade

然後就不好了,pip命令直接報錯了。。。

[[email protected] /]# 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 954, in <module>
    class Environment:
  File "/usr/lib/python2.6/site-packages/pkg_resources/__init__.py", line 958, in Environment
    self, search_path=None, platform=get_supported_platform(),
  File "/usr/lib/python2.6/site-packages/pkg_resources/__init__.py", line 188, in get_supported_platform
    plat = get_build_platform()
  File "/usr/lib/python2.6/site-packages/pkg_resources/__init__.py", line 388, in get_build_platform
    from sysconfig import get_platform
ImportError: No module named sysconfig

原因

網上各種說路徑的問題,明顯不是,因為我升級setuptools前是OK的。最終谷歌得知是因為python版本太老,我升級的setuptools太新了,已經不再支援2.6版本的python。升級後的setuptools版本是:

setuptools-40.4.3-py2.py3-none-any.whl

解決方案

既然是因為setuptools版本太新了,那就安裝一個37之前的版本唄。選了一個36的版本,安裝後一切正常,good。

pip install setuptools==36.7.0