Я использую virtualenv + pip для разработки python. Я не уверен, что произошло, но вдруг, когда я пытаюсь запустить инструмент командной строки или импортировать библиотеки, я получаю это сообщение об ошибке:
Traceback (most recent call last):
File "/Users/kyle/.virtualenvs/fj/bin/pip", line 4, in <module>
import pkg_resources
File "/Users/kyle/.virtualenvs/fj/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg/pkg_resources.py", line 698, in <module>
the platform/python version defined at initialization are added.
File "/Users/kyle/.virtualenvs/fj/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg/pkg_resources.py", line 701, in Environment
search_path = sys.path
File "/Users/kyle/.virtualenvs/fj/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg/pkg_resources.py", line 96, in get_supported_platform
'Environment', 'WorkingSet', 'ResourceManager',
File "/Users/kyle/.virtualenvs/fj/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg/pkg_resources.py", line 221, in get_build_platform
if provDarwin:
File "/Users/kyle/.virtualenvs/fj/lib/python2.6/distutils/__init__.py", line 14, 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'
Из того, что я могу расшифровать, Python пытается найти distutils_path
в системной версии Mac OSX Python, а не в моей версии virtualenv, как это должно быть.
Не знаю, почему это внезапно началось. Может быть, недавнее обновление OSX? Другая возможность заключается в том, что мой жесткий диск вот-вот умрет, поэтому Apple подарила мне новую и запустила помощника по миграции. Может быть, что-то не перешло правильно?