在Virtualenv中使用Python的Pip

1 投票
1 回答
702 浏览
提问于 2025-04-17 06:50

我已经在使用Heroku的cedar堆栈和Python一段时间了,一直没有遇到任何错误。不过今天,当我决定在本地更新我的依赖项时,使用了sudo bin/pip install -r requirements命令,却收到了以下错误:

Traceback (most recent call last):
  File "/Users/alex/Desktop/dev/warren/warren/bin/pip", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/Users/alex/Desktop/dev/warren/warren/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg/pkg_resources.py", line 698, in <module>
  File "/Users/alex/Desktop/dev/warren/warren/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg/pkg_resources.py", line 701, in Environment
  File "/Users/alex/Desktop/dev/warren/warren/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg/pkg_resources.py", line 96, in get_supported_platform
  File "/Users/alex/Desktop/dev/warren/warren/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg/pkg_resources.py", line 221, in get_build_platform
  File "/Users/alex/Desktop/dev/warren/warren/lib/python2.6/distutils/__init__.py", line 16, in <module>
    exec(open(os.path.join(distutils_path, '__init__.py')).read())
IOError: [Errno 2] No such file or directory: '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/distutils/__init__.py'

我怀疑这可能和我升级到Lion系统有关(就像这个问题提到的那样),但正如那个问题中提到的,我也更新了Xcode,但问题依然存在。

当我尝试cd进入上面的目录时,发现里面没有__init__.py文件,实际上根本没有.py文件,只有.pyo.pyc文件。

1 个回答

4

你看到的错误信息是因为虚拟环境(virtualenv)创建了一个指向你系统中Python的链接。现在你需要删除这个虚拟环境,然后重新创建一个。要删除它,你可以这样做:

rm -r bin
rm -r include
rm -r lib
rm .Python

然后你就可以重新创建你的虚拟环境,并使用pip安装你的requirements.txt文件中的依赖了。

撰写回答