Python:在Mac OS 10.6上安装2.7.2后出现警告

0 投票
1 回答
610 浏览
提问于 2025-04-17 06:38

我成功安装了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 个回答

1

一般来说,你绝对不应该删除 /System/Library 里的任何东西。这个文件夹和里面的文件是苹果公司提供的,属于 OS X 系统的一部分。删除这些文件可能会导致你的系统出现问题。比如,删除 /System/​Library/​Frameworks/​Python.framework/​Versions/​2.6/​Extras/​lib/​pyth‌​on/​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 来安装 virtualenvpipdistribute

顺便说一下,警告信息是因为你在使用系统自带的 Python,它已经安装了一个版本的 setuptools,但 virtualenv 也会安装自己的版本。有关类似问题和使用系统 Python 的解决方法,可以查看 为什么安装 Python 包会破坏 setuptools 并导致 pkg_resources 找不到?。另一种解决方案是不使用系统 Python 来搭配 virtualenv

撰写回答