在OSX10.7.5上,我试图使用pip3
命令将包安装到python3。当我尝试时,会收到以下错误消息:
zak$ pip3
Traceback (most recent call last):
File "/usr/local/Cellar/python3/3.3.2/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/setuptools-1.0-py3.3.egg/pkg_resources.py", line 2793, in <module>
File "/usr/local/Cellar/python3/3.3.2/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/setuptools-1.0-py3.3.egg/pkg_resources.py", line 673, in require
File "/usr/local/Cellar/python3/3.3.2/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/setuptools-1.0-py3.3.egg/pkg_resources.py", line 580, in resolve
pkg_resources.VersionConflict: (pip 1.4.1 (/usr/local/lib/python3.3/site-packages), Requirement.parse('pip==1.3.1'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/bin/pip3", line 5, in <module>
from pkg_resources import load_entry_point
File "<frozen importlib._bootstrap>", line 1567, in _find_and_load
File "<frozen importlib._bootstrap>", line 1534, in _find_and_load_unlocked
File "/usr/local/Cellar/python3/3.3.2/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/setuptools-1.0-py3.3.egg/pkg_resources.py", line 2797, in <module>
File "/usr/local/Cellar/python3/3.3.2/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/setuptools-1.0-py3.3.egg/pkg_resources.py", line 576, in resolve
pkg_resources.DistributionNotFound: pip==1.3.1
看起来setuptools
需要旧版本的pip(我已经安装了1.4.1),但是为什么呢?我该怎么解决?
运行后
pip install --upgrade setuptools
我能修好它。但对于每个人来说,这可能不是真的,因为我仍然在学习Python。
问题似乎是,您有两个不同的Python 3.3安装,以及一个共享的site packages目录。*并且您运行的工具
pip3
来自pip 1.3.1,但是它用于执行其工作的模块来自pip1.4.1。要解决这个问题,最简单的方法是完全删除这两个Python 3.3,然后重新安装所需的python3.3。
下面的命令应该可以工作(对于某些命令,可以使用
sudo
,或者使用Finder并让它告诉您是否需要进行身份验证)。请注意,这也将部分或完全删除任何其他第三方Python版本(例如Python.or g 2.7.5),我认为这对您来说不是问题,但对未来的读者可能是问题。
在卸载任何软件包之前,您可能需要列出所有已安装软件包的列表。(我通常以最黑的方式完成这项工作:启动
ipython
,让它tab完成一个import语句…)最后,这些细节对于任何有类似问题的未来读者来说都是不同的,但基本思路应该是相同的。
brew uninstall python3
rm -rf /Library/Frameworks/Python.framework
rm -rf /usr/local/lib/python*
rm -rf /usr/local/share/python*
~/.bash_profile
(或~/.profile
或其他位置)中查找将Python路径添加到路径的位置。在Python.framework
或Cellar/python3
中可能有/usr/local/share/python3
和/或其他内容。把你找到的都扔掉。brew doctor
,并修复它所抱怨的任何可能相关的内容(非自制MacFUSE的东西是很好的;建议可能值得做,但在这里不重要),然后再次运行以确保。brew install python3
。pip3
重新安装您删除的任何软件包。*详情:
/usr/local/Cellar/python3/3.3.2/
中,各种东西符号链接到/usr/local/bin
及其同级,也可能链接到/Library
的某个地方。/Library/Frameworks/Python.framework/Versions/3.3/
中,各种东西可能被符号链接到/usr/local/bin
中,或者添加到您的路径中。/usr/local/lib/python3.3
。相关问题 更多 >
编程相关推荐