Запустите Python в Mac-приложении. - PullRequest
4 голосов
/ 17 ноября 2010

У меня есть программное обеспечение, написанное на python, с графическим интерфейсом пользователя, написанным на PyQt. Чтобы создать исполняемый файл программного обеспечения, я поставляю с ним предварительно скомпилированную версию Python и Qt, и эта хитрость, похоже, работает в Windows и Linux, поскольку я знаю, как создать istaller. Проблема заключается в том, чтобы встраивать все в Mac .app Для запуска программного обеспечения я использую следующий скрипт шел

export DYLD_LIBRARY_PATH=`pwd`/lib:$DYLD_LIBRARY_PATH
export DYLD_FRAMEWORK_PATH=`pwd`/Resources
PYTHONPATH=$PYTHONPATH:. bin/python ProgramPy/Main.py

Если я запускаю этот скрипт оболочки извне, он работает нормально, но когда я пытаюсь встроить все в приложение с утконосом, я получаю следующую ошибку.

dyld: Library not loaded: @executable_path/../.Python
  Referenced from: /Users/luca/Desktop/TempScript.app/Contents/Resources/bin/python
  Reason: image not found
./run.sh: line 3:   725 Trace/BPT trap          PYTHONPATH=$PYTHONPATH:. bin/python ProgramPy/Main.py

Обратите внимание, что файл /Users/luca/Desktop/TempScript.app/Contents/Resources/bin/python является исполняемой версией python и фактически находится в папке «Ресурсы» приложения. Я не понимаю, почему система не может найти это ... Может быть, я чего-то не понимаю в понимании того, как mac использует pythonpath ...

Спасибо

1 Ответ

3 голосов
/ 17 ноября 2010

Я просто использую py2app .

...