У меня есть приложение Tkinter, написанное на python, и я хочу сделать из него "родные" (простые для запуска) исполняемые файлы Mac и Windows. Я успешно создал Windows .exe, используя py2exe, но эквивалентный процесс с py2app не работает.
Вот мой setup.py:
from setuptools import setup
import sys<br>
MAIN_SCRIPT = "myapp.py"
WINDOWS_ICON = "myicon.ico"
MAC_ICON = "myicon.icns"<br>
if sys.platform in ("win32", "win64"): # does win64 exist?
import py2exe
setup( windows=[{ "script":MAIN_SCRIPT,
"icon_resources":[(0x0004, WINDOWS_ICON)]
}],
)
elif sys.platform == "darwin":
import py2app
setup( app=[MAIN_SCRIPT], # doesn't include the icon yet
setup_requires=["py2app"],
)
Я просто cd
в каталог приложения и запускаю python setup.py py2app
. .App появляется без ошибок, но вылетает при запуске с «myapp обнаружил фатальную ошибку и теперь завершает работу».
У меня работает Snow Leopard, и я пробовал это как на стандартном Apple Python 2.6, так и на python25 от MacPorts. Я где-то читал, что лучше использовать другой Python, потому что py2app не будет включать системную версию в ваше приложение.
РЕДАКТИРОВАТЬ: Вот что говорит об этом консоль Mac:
11/27/10 1:54:44 PM [0x0-0x80080].org.pythonmac.unspecified.myapp[77495] dlsym(0x10b120, Py_SetProgramName): symbol not found
11/27/10 1:54:46 PM [0x0-0x80080].org.pythonmac.unspecified.myapp[77495] 0x99274242
11/27/10 1:54:46 PM com.apple.launchd.peruser.501[185] ([0x0-0x80080].org.pythonmac.unspecified.myapp[77495]) Exited with exit code: 255