【发布时间】:2015-10-04 23:01:42
【问题描述】:
这是在 CentOs 6.6 上。我正在尝试建立一个科学的 python 环境。我想避开 Anaconda。尝试安装 matplotlib 时,我收到“ImportError:没有名为 pkg_resources 的模块”。完整的安装历史记录:
sudo yum install gcc-c++.x86_64
sudo yum install gcc
sudo yum install atlas atlas-devel lapack-devel blas-devel
sudo yum install python-devel
sudo pip install numpy
sudo pip install scipy
sudo pip install pandas
sudo pip install matplotlib
在最后一步,我收到消息
Complete output from command python setup.py egg_info:
The required version of distribute (>=0.6.28) is not available,
and can't be installed while this script is running. Please
install a more recent version first, using
'easy_install -U distribute'.
那我做
sudo pip install --upgrade distribute
安装distribute-0.7.3、setuptools-18.0.1。那么:
sudo pip install matplotlib
导致:
File "/usr/bin/pip", line 5, in <module>
from pkg_resources import load_entry_point
ImportError: No module named pkg_resources
有什么想法吗?
更新
经过上述步骤,setuptools 和 pip 在此安装中被破坏。在 python shell 中,执行help() 后跟modules 不会列出setuptools。在文件系统中搜索setuptools 目录显示:
/usr/lib/python2.6/site-packages/setuptools-18.0.1.dist-info/
而/usr/lib/python2.6/site-packages/ 中的setuptools.pth 文件包含指向不存在的./setuptools-0.6c11-py2.6.egg-info 的指针。
同时还有一个目录
/usr/share/doc/python-setuptools-0.6.10/
毕竟,pip 不再起作用。
【问题讨论】:
-
distribute已死。删除分发和安装/升级setuptools和pip是否可以解决问题? -
@cel 尝试卸载
distribute导致同样的错误。调查它.. -
@nikosd,我通常推荐 anaconda,因为它让事情变得如此简单。如果您不想使用 anaconda,我至少会使用
virtualenv。这个问题可能是由你的包管理器和 pip 之间的争吵引起的 -using sudoforpip在大多数情况下是一个坏信号:) -
@juanmajmjr stackoverflow.com/questions/7446187/… 接受的答案也不起作用。尝试删除
distribute,如此处所述pypi.python.org/pypi/setuptools/0.9.8#installation-instructions
标签: python matplotlib centos installation pip