无法升级mac osx 10.10.2中的python six软件包
我正在尝试安装最新版本的six python包,但我有以下问题。无法摆脱mac OSX 10.10.2中的六个1.4.1无法升级mac osx 10.10.2中的python six软件包,python,macos,pip,six,Python,Macos,Pip,Six,我正在尝试安装最新版本的six python包,但我有以下问题。无法摆脱mac OSX 10.10.2中的六个1.4.1 sudo pip install six --upgrade Requirement already up-to-date: six in /Library/Python/2.7/site-packages Cleaning up... pip search six six - Python 2 and 3 compatibility utilities INSTALLED
sudo pip install six --upgrade
Requirement already up-to-date: six in /Library/Python/2.7/site-packages
Cleaning up...
pip search six
six - Python 2 and 3 compatibility utilities
INSTALLED: 1.9.0 (latest)
python -c "import six; print six.version"
1.4.1
which -a python
/usr/bin/python
which -a pip
/usr/local/bin/pip
这里怎么了?不能升级六 您的
pip
二进制文件属于/usr/local/bin/python
,而python
指向/usr/bin/python
。因此
pip install --upgrade six
将安装到/usr/local/bin/python
下面的命令将确保使用正确版本的pip:
python -m pip install --upgrade six
MacOSX的默认python是作为框架安装的。 在framework目录下,有一个'Extras'目录,
six
包已经放在那里了
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/Python/six.py
根据描述(),/System/Library/Frameworks/Python.framework/Versions/2.7/Extras
列在模块搜索路径中的/Library/Python/2.7/site packages
之前。
这意味着/System/Library/Frameworks/Python中已经存在所有包。framework/Versions/2.7/Extras
无法升级
也许你应该手动安装python,而不是使用默认的python。对我来说,只是使用固定的一切
brew install python
我在使用pip安装openstack客户端时遇到了这个问题。我的修复方法是使用easy_install而不是pip,因为它使用
/Library/Python/2.7/site packages/
进行模块安装,而不是/System/Library/Frameworks/Python.framework/Versions/2.7/Extras
。如果此解决方案不适用于您,那么我可以确认@Masakazu Matsushita具有将PYTHONPATH
设置为/Library/Python/2.7/site packages
的正确解决方案。要实现该解决方案,请添加以下行:
export PYTHON_PATH=/Library/Python/2.7/site-packages
对于您的
~/.bashrc
和~/.profile
(如果您正在尝试安装一个GUI Python应用程序)。虽然上面的一个或另一个解决方案可能适合您,但我认为了解正在发生的事情以及您有哪些选项很重要。我发现(相当长的)描述非常有用:它从概述选项开始,然后才建议解决方案。尝试以下步骤
$brew安装python
$brew链接--覆盖python
$hash-r python
我用下面的方法解决了这个问题
python setup.py安装
这是因为它安装了新版本的six到/Library/Python/2.7/site-packages/,在/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/Python/之前搜索该软件包
easy_install -U six
Easy_install甚至在pip失败时也成功地升级了包。最后,我的问题是我使用的是IPython外壳
哪个ipython
返回了/usr/local/bin/ipython
,检查后,该文件在顶部声明了#/usr/bin/python
,这似乎在规避我使用正确python位置的所有努力
只需更改此行
#/usr/local/bin/python
指向正确的python版本,这意味着IPython使用了正确的six
模块。请为我试用pip2
pip2安装-U six尝试卸载six:
pip卸载six
。然后进行安装。似乎python
和pip
不属于同一个解释器。尝试python-mpip安装——改为升级六个。如果这不利于考虑添加<代码>的输出- Python < /C>和 > PIP < /代码>。“丹尼尔罗斯曼不,我不在VielalEnV。这是我主要切换到节点和NPM的原因之一。Python依赖项存在这些问题。另一个解决方案是设置PYTHONPATH
像export PYTHONPATH=/Library/Python/2.7/site packages
。在PYTHONPATH
中指定的所有路径的优先级都高于OS X framework python库。这对我来说很有效:python-m pip install——升级sixMy six不会更新,因为我库中的缓存库没有正确的权限/所有权(根据pip)@roopalgarg的解决方案也适用于我(osx 10.11)。谢谢这对我没用。。仍然出现相同的错误,无法升级框架包。作为一个新手,我能找到一个循序渐进的方法来解决这个问题吗?我已经安装了python 3和python 2。这可能是个问题吗?我使用mac os x 10.11.1。你的回答对我有帮助。我正在使用Mac os x 10.10.5我做了更改,但仍然收到相同的错误消息。。我在10点11分。1@Raghav,最好是准确地记录您所做的事情和遇到的错误,然后开始一个新的问题,该问题链接到我的答案。尝试升级six是目标,显然,它是系统包的一部分,下面是消息-----------------OSError:[Errno 1]不允许操作:'/var/folders/98/kcksn_cn7619mkjsmlgqt8lc0000gn/T/pip mSyToD uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/Python/six-1.4.1-py2.7.egg info'------------我有相同的规范,-->$which-a pip==>/Library/Frameworks/Python.framework/Versions/3.4/bin/pip==>/usr/local/bin/pip-->$which-a Python====>/usr/bin/pythonCleanest解决方案,如果您想保持OS X Python的完整性,这应该是最好的答案。快点。Six Package 1.11.0 link=>[等等,这是PYTHONPATH还是PYTHON_PATH?太棒了。这类事情让我想知道为什么我要用计算机来完成这些任务