重要的软件包和模块与py2exe不兼容?

有py2exe无法处理的主要/常见/重要的软件包吗?

我目前正在研究从一个Python程序,将使用Tkinter,一些Excel文件读取模块,NumPy,SciPy和matplotlib创build.exe的可能性:试图用py2exe来实现这一点是现实的吗?

我经常使用Scipy,matplotlib,wxpython和win32com或Machin的xlrd / xlwt模块构buildpy2exe单个文件可执行文件。 从来没有使用过Tkinter,但不应该是一个问题,可能wxpython更挑剔。

在构build可执行文件之前和之后,我发现numpy / scipy,matplotlib和wxpython存在一些问题,但是在知道该怎么做的情况下,它可以正常工作。

一些问题:

matplotlib需要指出一些辅助档案的位置。 你需要添加到你的setup.py

datafiles = matplotlib.get_py2exe_datafiles() 

numpy / scipy给了我一些问题,由于在模块中的一些expresions,当执行py2exe可执行文件。 Numpy有一些如下的行:

 __doc__ += "something more" 

__doc__为None时失败。
为此,我不得不手动修改numpy脚本(包括if)。 我不知道这个新版本是否已经解决了。

wxpython通常是由于一些必须在计算机中工作的必需的Microsoft DLL所导致的问题的来源。 只要你必须小心,确保你在你的软件包中提供它们,或至less阻止你的用户的问题。

一些有用的提示也可以在py2exe和wxpython维基中find

当然可以尝试。 你可能会遇到一些问题,但是我怀疑你会遇到阻碍,特别是在非常常见的软件包中。

您可以快速浏览py2exe如何在各种库中使用:

http://www.py2exe.org/index.cgi/WorkingWithVariousPackagesAndModules

对于那里没有列出的任何东西,请为py2exe <package-name>启动一个快速的google