【发布时间】:2012-07-25 06:16:28
【问题描述】:
在尝试使用 py2exe 为我的 GUI 程序创建可执行文件时,我收到以下错误:
Traceback (most recent call last):
File "dopy.py", line 139, in <module>
File "Tix.pyc", line 225, in __init__
_tkinter.TclError: can't find package Tix
我的程序导入了Tix,但是py2exe没有打包。
我在网上找不到任何可行的解决方案,但最接近的是http://www.py2exe.org/index.cgi/TixSetup。
不幸的是,将 data_files 更改为我的 Tix 路径(我的 Tix8.4.3 而不是旧的 Tix8.1)也不起作用。
如果没有 Tix,我的程序可执行文件无法启动,py2exe 似乎不想包含它。
查看py2exe创建的'dist'文件夹,我注意到有一个tcl文件夹,里面有一个'tcl8.5'文件夹和一个'tk8.5'文件夹,但没有Tix文件夹。这些文件夹在我的“Python/tcl/”文件夹下是相同的。
只需将“tix8.4.3”文件夹复制到“dist/tcl/”文件夹中即可包含 Tix DLL 和包文件,现在我的程序就可以运行了!
【问题讨论】:
-
您可以在 setup.py 中尝试
import Tix。但是,如果“简单地将 'tix8.4.3' 文件夹复制到 'dist/tcl/' 文件夹中”有效,那么带有 data_files 的行正试图做到这一点。因此,请确保路径确实正确。它原则上应该有效。 -
您“安装”了 Tix,还是只是复制了它?
-
我相信我只需要复制文件夹。我希望程序及其文件是独立的。