我在XP上使用python 2.6。我刚刚安装了py2exe,并且可以从hello.py成功创建一个简单的hello.exe。但是,当我尝试在实际程序上使用py2exe时,py2exe会生成一些信息消息,但无法在dist文件夹中生成任何内容。

我的setup.py看起来像这样:

from distutils.core import setup
import py2exe

setup(console=['ServerManager.py'])

和py2exe输出看起来像这样:

python setup.py py2exe
running py2exe
creating C:\DevSource\Scripts\ServerManager\build
creating C:\DevSource\Scripts\ServerManager\build\bdist.win32
   ...
   ...
creating C:\DevSource\Scripts\ServerManager\dist
*** searching for required modules ***
*** parsing results ***
creating python loader for extension 'wx._misc_' (C:\Python26\lib\site-packages\wx-2.8-msw-unicode\wx\_misc_.pyd -> wx._misc_.pyd)
creating python loader for extension 'lxml.etree' (C:\Python26\lib\site-packages\lxml\etree.pyd -> lxml.etree.pyd)
   ...
   ...
creating python loader for extension 'bz2' (C:\Python26\DLLs\bz2.pyd -> bz2.pyd)
*** finding dlls needed ***

py2exe似乎已经找到了我的所有导入文件(尽管看到win32时我感到有些惊讶,因为我没有明确导入它)。此外,我的程序使用以下命令非常愉快地启动:

python ServerManager.py

显然我在做一些根本上错误的事情,但是在没有py2exe的任何错误消息的情况下,我也不知道该怎么办。

最佳答案

我把它放在所有的setup.py脚本中:

distutils.core.setup(
    options = {
        "py2exe": {
            "dll_excludes": ["MSVCP90.dll"]
        }
    },
    ...
)

这样可以使py2exe保持安静,但是您仍然需要确保dll在用户计算机上。

关于python - py2exe无法生成可执行文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/323424/

10-12 20:05