Очень распространено иметь несколько версий Python в системах OS X. В последних выпусках OS X Apple выпустила две версии (в /usr/bin
). Возможно, вы установили более свежие версии с помощью установщиков из python.org (которые обычно существуют в /Library/Frameworks/Python.framework
или с помощью распространителя пакетов, такого как MacPorts (который устанавливается в /opt/local/Library/Frameworks/Python.framework
). Имейте в виду, что для каждой версии Python требуется собственная копия setuptools
.
Поскольку путь к пакету сайта, о котором вы сообщаете, равен /Library/Python/2.6/site-packages
, наиболее вероятно, что вы использовали поставляемый Apple Python 2.6.1 в OS X 10.6, чтобы попытаться установить новую версию setuptools
. Обратите внимание, что Apple уже поставляет setuptools
для своих питонов (0.6c9 для 2.6.1 в 10.6); соответствующие easy_install
команды находятся в /usr/bin
.
$ /usr/bin/python2.6 -c 'import setuptools;print(setuptools.__file__,setuptools.__version__)'
('/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/setuptools/__init__.pyc', '0.6c9')
Если вы используете другой Python, не поставляемый Apple, следуйте инструкциям по установке новой версии setuptools
(или Distribute
), убедившись, что вы вызываете правильную версию Python. Проверьте вашу оболочку PATH и which python
, чтобы убедиться.
Если это не поможет, обновите ваш вопрос, добавив дополнительную информацию.
ОБНОВЛЕНИЕ: Судя по вашим дальнейшим комментариям, что-то не так в вашей стандартной директории site-packages. После устранения этой проблемы и установления установленной Apple setuptools
версии 0.6c9, похоже, пакет, который вы пытаетесь установить, ищет определенную, более раннюю версию setuptools, 0.6c7. Если это так, вы должны сначала определить, почему это так и если это необходимо. Скорее всего, это просто неверная спецификация версии в файле setup.py
пакета, то есть с использованием ==
вместо >=
. Если вы можете, отредактируйте файл setup.py, чтобы он мог использовать более новую версию. В маловероятном случае, когда пакет действительно действительно нуждается в конкретной старой версии setuptools
(которая может даже не работать с этой версией Python или OS X), вы могли бы попробовать установить старая версия, например, так:
$ sudo /usr/bin/easy_install-2.6 setuptools==0.6c7
$ /usr/bin/python2.6 -c 'import setuptools;print(setuptools.__file__,setuptools.__version__)'
('/Library/Python/2.6/site-packages/setuptools-0.6c7-py2.6.egg/setuptools/__init__.pyc', '0.6c7')
Но вам действительно следует избегать этого, если это вообще возможно, поскольку при этом будет установлена другая более старая версия easy_install
в /usr/local/bin
и могут возникнуть проблемы с установкой и использованием других пакетов.