Python:在Mac OS 10.6上安装2.7.2后出现警告
我成功安装了Python 2.7.2。
我打开终端,看到以下信息:
/Library/Python/2.6/site-packages/virtualenvwrapper/hook_loader.py:16: UserWarning: Module pkg_resources was already imported from /System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.pyc, but /Library/Python/2.6/site-packages is being added to sys.path
import pkg_resources
/Library/Python/2.6/site-packages/virtualenvwrapper/hook_loader.py:16: UserWarning: Module site was already imported from /System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site.pyc, but /Library/Python/2.6/site-packages is being added to sys.path
import pkg_resources
怎么解决这个问题呢?
苏尔坦
1 个回答
一般来说,你绝对不应该删除 /System/Library
里的任何东西。这个文件夹和里面的文件是苹果公司提供的,属于 OS X 系统的一部分。删除这些文件可能会导致你的系统出现问题。比如,删除 /System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.pyc
不是世界末日,但这也不是解决办法。虽然你安装了 Python 2.7,但不应该试图删除苹果提供的 Python 2.6。我不太明白你想做什么,但我猜你之前有一个使用 2.6 的虚拟环境,现在想用 2.7 创建一个新的。如果是这样,你应该为新的 Python 2.7 安装一个 virtualenv
的版本,并用它创建一个新的虚拟环境。不要使用与 Python 2.6 相关的现有 virtualenv
。而且不要使用 /usr/bin
里的 easy_install
命令,因为这些是和苹果提供的 Python 相关的。你需要确保你的 shell 路径设置正确,让 Python 2.7 的框架 bin 目录在你的 PATH 中排在第一位;python.org 的安装程序会帮你做到这一点。你应该看到类似这样的内容:
$ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
然后你可以用这个 Python 来安装 virtualenv
、pip
或 distribute
。
顺便说一下,警告信息是因为你在使用系统自带的 Python,它已经安装了一个版本的 setuptools
,但 virtualenv
也会安装自己的版本。有关类似问题和使用系统 Python 的解决方法,可以查看 为什么安装 Python 包会破坏 setuptools 并导致 pkg_resources 找不到?。另一种解决方案是不使用系统 Python 来搭配 virtualenv
。