Как установить pyobjc на нестандартную установку Python SnowLeopard - PullRequest
2 голосов
/ 27 апреля 2010

У меня проблемы с установкой pyobjc на SnowLeopard.

Он поставляется с Python 2.6, но мне нужно 2.5, поэтому я успешно установил 2.5. После этого я установил xcode. После этого я установил pyobjc с "easy_install-2.5 pyobjc"

Но когда я запускаю свой python 2.5 и из строки cmd пытаюсь импортировать Foundation, он говорит "нет модуля с именем Foundation"

Я пытался сделать export PYTHONPATH="/Library/Python/2.5/site-packages/pyobjc_core-2.2-py2.5-macosx-10.6-i386.egg/objc" до запуска интерпретатора Python, но все еще не повезло (этот каталог .egg является единственным каталогом установки pyobjc, в котором есть еще несколько файлов egg в пакетах сайта ... в поддиректории objc есть init .py файл)

Конечно, с 2.6 все отлично работает. Как мне узнать, что не так и что мне делать?

Когда я печатаю sys.modules из python 2.6, я обнаруживаю, что импортируемый объект находится в основном из того же места установки "/Library/Python/2.6/site-packages/pyobjc_core-2.2-py2.6-macosx-10.6- universal.egg / objc / ", так почему он не будет работать для 2.5?

1 Ответ

4 голосов
/ 29 апреля 2010

Хорошо, нашел, что не так.

Мой SnowLeopard поставляется с ОБА python 2.6 (по умолчанию) и 2.5 установлен

XCode установил objc для обоих.

Таким образом, я в основном разбил свой pythonpath и т. Д. С помощью дополнительных ручных установок python 2.5 и objc, так или иначе библиотеки не были совместимы (у меня и у исходного python есть 2.5.4, но немного отличается релиз, и что более важно, вероятно, собран с различными вариантами сборки )

Я сделал следующее: убедившись, что я запускаю все с оригинального python2.5 (в моей системе он находится в /usr/bin/python2.5), удалив неправильные записи из easy_install.pth в пакетах сайта и добавив путь в PyObjc для easy_install.pth.

Извините, что не узнал раньше, но я надеюсь, что это будет полезно кому-то в будущем!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...