py2app Tkinter.pyc链接到app bundle之外

时间:2016-06-05 13:52:09

标签: python macos py2app

我正在尝试学习如何在Sandwich.app教程(1)之后使用py2app。我使用的是从MacPorts安装的python2.7.11以及从MacPorts安装的py2app 0.9.1。

正在运行python setup.py py2app会生成一个似乎有用的应用包。但是,如果我"删除"我的/ opt / local目录(sudo mv /opt/local /opt/local-save),我发现应用程序依赖于我的MacPorts中的文件安装,特别是Tkinter.pyc尝试在软件包之外找到tcl8.6:

  

6/5/16 9:08:02.561 AM Sandwich [79618]:File" /Users/gbarnes/bin/sandwichApp/Sandwich.app/Contents/Resources/ boot 。 py",第351行,

     

6/5/16 9:08:02.561 AM Sandwich [79618]:_ run()

     

6/5/16 9:08:02.561 AM Sandwich [79618]:File" /Users/gbarnes/bin/sandwichApp/Sandwich.app/Contents/Resources/ boot 。 py",第336行,在_run

     

6/5/16 9:08:02.561 AM Sandwich [79618]:exec(compile(source,path,' exec'),globals(),globals())

     

6/5/16 9:08:02.561 AM Sandwich [79618]:File" /Users/gbarnes/bin/sandwichApp/Sandwich.app/Contents/Resources/Sandwich.py​​" ;,第8行,在

     

6/5/16 9:08:02.561 AM Sandwich [79618]:root = tk.Tk()

     

6/5/16 9:08:02.561 AM Sandwich [79618]:文件" Tkinter.pyc",第1814行, init

     

6/5/16 9:08:02.561 AM Sandwich [79618]:_ tkinter.TclError:无法在以下目录中找到可用的init.tcl:

     

6/5/16 9:08:02.561 AM Sandwich [79618]:/ opt / local / lib / tcl8.6 /Users/gbarnes/bin/sandwichApp/Sandwich.app/Contents/lib/tcl8.6 / Users / gbarnes / bin / sandwichApp / Sandwich.app / lib / tcl8.6 /Users/gbarnes/bin/sandwichApp/Sandwich.app/Contents/library/Users/gbarnes/bin/sandwichApp/Sandwich.app/library/Users/ gbarnes / bin / sandwichApp / Sandwich.app / tcl8.6.4 / library /Users/gbarnes/bin/sandwichApp/tcl8.6.4/library

     

6/5/16 9:08:02.562 AM Sandwich [79618]:这可能意味着Tcl没有正确安装。

只需将/opt/local/lib/tcl8.6复制到"以下目录中的一个"导致其他问题(需要将tk8.6复制到同一位置,然后应用程序崩溃,看起来似乎是fontconfig错误)。

我觉得必须有一些我想念的简单内容,我们将非常感谢任何帮助/建议。

0 个答案:

没有答案