45

我试图pip install --upgrade pip在 OSX 上升级 pip 并且 pip 和 easy_install 都不起作用。

运行 pip 时

Traceback (most recent call last):
  File "/usr/local/bin/pip", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/distribute-0.6.49-py2.7.egg/pkg_resources.py", line 2881, in <module>
    parse_requirements(__requires__), Environment()
  File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/distribute-0.6.49-py2.7.egg/pkg_resources.py", line 596, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: pip==1.3.1

运行 easy_install 时

  File "/usr/local/bin/easy_install", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/distribute-0.6.49-py2.7.egg/pkg_resources.py", line 2881, in <module>
    parse_requirements(__requires__), Environment()
  File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/distribute-0.6.49-py2.7.egg/pkg_resources.py", line 596, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: distribute==0.6.36

我怎样才能解决这个问题?

更新 我找到了解决方案。

我做了cd /usr/local/lib/python2.7/site-packages && ls

找到pip-1.4.1-py2.7.egg-infodistribute-0.6.49-py2.7.egg在目录中。

然后以下步骤解决了该问题。

  1. 将 pip 版本更改为 1.4.1 in/usr/local/bin/pip

  2. 将分发版本更改为 0.6.49 in/usr/local/bin/easy_install


curl ez_setup.py 并从中安装 setuptools 的其他此类问题的答案不起作用。它给出了以下错误。

Downloading https://pypi.python.org/packages/source/s/setuptools/setuptools-1.1.6.tar.gz
Traceback (most recent call last):
  File "<stdin>", line 370, in <module>
  File "<stdin>", line 366, in main
  File "<stdin>", line 278, in download_setuptools
  File "<stdin>", line 185, in download_file_curl
  File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 542, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['curl', 'https://pypi.python.org/packages/source/s/setuptools/setuptools-1.1.6.tar.gz', '--silent', '--output', '/usr/bin/setuptools-1.1.6.tar.gz']' returned non-zero exit status 23
4

8 回答 8

75

按如下方式安装分发包:

$ wget https://svn.apache.org/repos/asf/oodt/tools/oodtsite.publisher/trunk/distribute_setup.py
$ python distribute_setup.py

那时你会有工作easy_install

快乐编码。

于 2013-10-16T10:13:35.100 回答
17

其他答案都不适合我。有了这些说明就简单多了。我在 /usr/local/bin/easy_install 和 /usr/local/bin/easy_install-2.7 安装了一个额外的 easy_install 副本。我很确定我是按照这里和其他地方的说明这样做的。我的解决方案是删除这两个实例:

rm /usr/local/bin/easy_install
rm /usr/local/bin/easy_install-2.7

然后重新安装 pip

sudo easy_install --upgrade pip

一些背景知识:我不得不重新安装 OSX 后到了这一点。

于 2014-05-03T03:25:59.560 回答
9

如果你这样做,那么它将起作用:

cd /usr/local/lib/python2.7/site-packages && ls

在目录中查找pip-1.4.1-py2.7.egg-info和。distribute-0.6.49-py2.7.egg

然后以下步骤解决了该问题:

  • 将 pip 版本更改为 1.4.1 in/usr/local/bin/pip
  • 将分发版本更改为 0.6.49 in/usr/local/bin/easy_install
于 2013-10-26T11:13:02.567 回答
6

哪个操作系统?

无论如何,您应该尝试这样做:

sudo easy_install -U distribute

也许这也有帮助,安装easy_install-2.7:

wget --no-check-certificate http://pypi.python.org/packages/source/d/distribute/distribute-0.6.35.tar.gz
tar xf distribute-0.6.35.tar.gz
cd distribute-0.6.35
python2.7 setup.py install

也许您需要强制更新或重新安装easy_install,因为这似乎是您的问题。

于 2013-10-16T10:01:11.483 回答
4

再次在这里指出以使解决方案更加明显!

只需运行命令就sudo easy_install --upgrade pip为我解决了这个问题!

于 2016-01-05T12:16:37.617 回答
1

我正在从 OSX 系统 python 迁移到 homebrew python,并且遇到了同样的错误。升级自制 python 版本(运行brew upgrade python)为我做了这件事。

于 2016-10-29T11:11:34.103 回答
1

似乎 pip 是参考新版本的 python 安装的,而您的活动 python 可执行文件仍然很旧。如果您想保留版本的 python,这非常简单:使用旧版本重新安装 pip。

  1. 获取从https://pip.pypa.io/en/stable/installing/get-pip.py链接的文件
  2. 使用旧版本的 python 可执行文件(我假设它应该是python命令),运行脚本。

如果您正在寻找捷径:cd /tmp/ && wget https://bootstrap.pypa.io/get-pip.py && sudo python get-pip.py

该脚本删除旧版本的 pip 并正确安装新的可执行文件,链接到旧 python 的可执行环境。

于 2016-07-04T19:55:43.233 回答
0

解决distributeNotFound错误的一种方法是下载具有精确版本的python模块。解压缩,进入文件夹并安装“python setup.py install”。然后,可能会将其升级到最新版本。

我有错误'pkg_resources.DistributionNotFound: The 'setuptools==19.4' distribution was not found and is required by the application'。当 v 36.2.7 已经发布时,我下载了 setuptools v 19.4。我安装了 v 19.4,然后使用命令“easy_install --upgrade setuptools”进行了升级。此后一切都像魅力一样。

于 2017-08-16T15:03:02.527 回答