【发布时间】:2015-10-23 05:05:12
【问题描述】:
我在 Mac OSX Yosemite 10.10.1 上使用 py2app 0.9 运行来自 anaconda 发行版的 Python 3.4 和 Tcl 8.5。
在早期的尝试中,构建会失败,但快速搜索发现了这些问题的解决方案(即在setup.py 的选项中包括“包”:['tkinter', 'matplotlib'],并更改MachOGraph.py 的第 49 行:loader --> loader_path)
现在py2app 完成构建,并在别名模式下运行我的应用程序功能,但是当我在正常模式下构建时(python setup.py py2app),生成的应用程序将无法打开,并且控制台显示以下回溯:
Traceback(最近一次调用最后一次):文件 "/Users/ryankeenan/Desktop/fishing/gui_test/dist/deani.app/Contents/Resources/boot.py", 第 355 行,在 _run() 文件中 "/Users/ryankeenan/Desktop/fishing/gui_test/dist/deani.app/Contents/Resources/boot.py", 第 336 行,在 _run exec(compile(source, path, 'exec'), globals(), globals()) 文件 "/Users/ryankeenan/Desktop/fishing/gui_test/dist/deani.app/Contents/Resources/deani.py", 第 731 行,在 app = Fishingapp() 文件中 "/Users/ryankeenan/Desktop/fishing/gui_test/dist/deani.app/Contents/Resources/deani.py", 第 536 行,在 init tk.Tk.init(self, *args, **kwargs) 文件中 "/Users/ryankeenan/Desktop/fishing/gui_test/dist/deani.app/Contents/Resources/lib/python3.4/tkinter/init.py", 第 1851 行,在 init self.tk = _tkinter.create(screenName, baseName, className、interactive、wantobjects、useTk、sync、use) _tkinter.TclError
令人沮丧的是它没有为“_tkinter.TclError”打印任何错误消息。我进行了相当多的搜索,但未能找到任何解决方案或复制此问题。我尝试构建各种基于 tkinter 的应用程序,但它们都以同样的方式失败。
这发生在我的代码中第一次调用 tk.Tk.init(self, *args, **kwargs) 时。
我的 setup.py 文件如下所示:
from setuptools import setup
APP = ['deani.py']
DATA_FILES = []
OPTIONS = {'packages': ['tkinter','matplotlib'],'argv_emulation': True}
setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'], )
【问题讨论】:
标签: python-3.x tkinter anaconda py2app