最近在用PyQT写一个东西,由于最终要在Windows平台使用,无可避免的涉及到程序打包问题,这样的工具有很多,最著名的要数py2exe,不过据说对PyQt支持不太好,我也没试过。后来在CPUG里看到有人提到了cx_Freeze,我就试了下,真心好用啊,我拿我的程序试了试,经过很简单配置就ok了,具体如下,
- 建立一个setup.py文件,内容如下:
from cx_Freeze import setup, Executable
setup(
name = "SunP2P",
version = "0.1",
description = "SunP2P 1.0",
executables = [Executable("main.py",base = 'Win32GUI')])
- 在当前路径运行 python setup.py build ,貌似生成exe必须在win平台。
经过一番探索,我在main.py中加入“import atexit”就解决了,而且找到了这个页面,如果有其他的import error,对号入座即可。