准备用wxPython写点东西,想release到没有python的系统上,于是试试py2exe。
py2exe是一个将python脚本打包成可在windows下独立运行程序的工具。现在最新的版本是0.6.6,发布于2006.12.30,已经好久没更新了。适用的python版本是2.5。
首先下载安装,非常方便,不必多说。
然后看下里面的sample,写了一个setup试了下:
from
distutils.core
import
setup
import
py2exe
opts
=
{
"
py2exe
"
:{
"
compressed
"
:
1
,
"
optimize
"
:
2
,
"
bundle_files
"
:
1
,
}
}
setup(
version
=
"
0.1.0
"
,
description
=
"
py2exewxauitest
"
,
name
=
"
wxaui
"
,
options
=
opts,
#
zipfile=None,
windows
=
[
"
aui.py
"
],
)
运行这个脚本 python setup.py py2exe
将在dist目录下产生生成的发布文件
由于使用了options,所以没有在命令行加入参数,options中的参数compressed可以压缩zip,bundle_files可以将dll合并到lib zip中,基本上用这两个参数就能达到我的要求了,另外如果使用zipfile=None,可以将lib包合并到exe中。一个简单的wx程序最后大小是6M左右,当然还不包括一些dll,如gdiplus.dll。
因为我想用一个lib,但是有多个exe,经过试验,py2exe不能在一个setup脚本过程中智能的将公共用到的东西放入lib中,如果你运行了多个setup过程,最后一次的lib会覆盖之前的。但是如果你能保证最后一次setup的lib中的东西是最全的,那也就可以了。
version = "0.1.0",
description = "py2exe wx aui test",
name = "wxaui",
这几个参数作用是生成的exe查看属性时能看到,当然还有版权等参数。
在这个地方有一些使用技巧:
http://www.py2exe.org/index.cgi/GeneralTipsAndTricks
本文介绍了如何使用py2exe将Python脚本打包成Windows可执行文件。通过设置不同的选项参数,例如压缩和捆绑文件,可以减小最终程序的体积。同时提到了在使用py2exe时遇到的一些注意事项。
614

被折叠的 条评论
为什么被折叠?



