徐高翔的个人网站

PyQt5系列教程(四)用py2exe进行程序打包

2015-07-13

软硬件环境

  • Windows 7
  • Python 3.4
  • PyQt5
  • Py2exe

前言

在我们开发了完整的PyQt5项目后,一般都会将其打包成exe可执行文件,方便其他人使用。今天我们就用Py2exe这个工具来打包上一博文中完成的工程,工程源码放在了Github上,见文末尾地址。

Py2exe

py2exepython的一个exe打包工具,同时支持python2python3,目前python3最高只支持到3.4。可以通过下面命令来安装

1
pip install py2exe

打包PyQt5工程

编写打包脚本

新建一个python文件setup.py,添加内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from distutils.core import setup
import py2exe
import sys

py2exe_options = {
"includes": ["sip"],
"dll_excludes": ["MSVCP90.dll",],
"compressed": 1,
"optimize": 2,
"ascii": 0,
"bundle_files": 1,
}

setup(
name = 'PyQt5程序',
version = '1.0',
windows = ['main.py'],
zipfile = None,
options = {'py2exe': py2exe_options}
)

各个配置选项基本上都能看懂,就不说了

运行打包命令

进入到你的工作目录,按住Shift键,同时点击鼠标右键,打开终端,在命令行里执行

1
python setup.py py2exe

py2exe_cmd

执行完毕后,会在工程文件下生成dist文件夹,进去执行生产的exe文件。很不幸,报错了

py2exe_error_01

为了解决这个问题,我们添加一个环境变量

py2exe_variant

再次执行exe,就看到我们预期的效果。

py2exe_result

备注

为了便于保存记录,在Github创建了一个工程,地址是: https://github.com/xugaoxiang/learningPyQt5,后续会把所有的代码、文档以及博文链接都放在上面。

参考资料

推荐文章(由hexo文章推荐插件驱动)

使用支付宝打赏
使用微信打赏

请博主喝咖啡!