python 打包模块:nuitka
该模块可以将python编译成C++级的可执行文件,是解决python图形化界面启动慢的神器。
1.环境配置
配置c/c++编译器:MinGW64 ,最低使用8.1版本,该资源自行下载。
百度网盘链接:
链接:https://pan.baidu.com/s/11B_RzEnOQnSbvKdV0gX93g
提取码:n1gg
- 文件解压之后放入C盘根目录,例:C:\mingw64。
- 使用cmd或poweshell进入文件夹bin目录,运行程序gcc.exe --version,poweshell输入.\gcc.exe --version。正常输出则表示资源无误。
- 将gcc.exe配置到系统环境变量
-
2.安装Nuitka
pip install nuitka
部分常用命令
--mingw64 #默认为已经安装的vs2017去编译,否则就按指定的比如mingw(官方建议)
--standalone 独立环境,这是必须的(否则拷给别人无法使用)
--windows-disable-console 没有CMD控制窗口
--output-dir=out 生成exe到out文件夹下面去
--show-progress 显示编译的进度,很直观
--show-memory 显示内存的占用
--include-qt-plugins=sensible,styles 打包后PyQt的样式就不会变了
--plugin-enable=qt-plugins 需要加载的PyQt插件
--plugin-enable=tk-inter 打包tkinter模块的刚需
--plugin-enable=numpy 打包numpy,pandas,matplotlib模块的刚需
--plugin-enable=torch 打包pytorch的刚需
--plugin-enable=tensorflow 打包tensorflow的刚需
--windows-icon-from-ico=你的.ico 软件的图标
--windows-company-name=Windows下软件公司信息
--windows-product-name=Windows下软件名称
--windows-file-version=Windows下软件的信息
--windows-product-version=Windows下软件的产品信息
--windows-file-description=Windows下软件的作用描述
--windows-uac-admin=Windows下用户可以使用管理员权限来安装
--linux-onefile-icon=Linux下的图标位置
--onefile 像pyinstaller一样打包成单个exe文件
--include-package=复制比如numpy,PyQt5 这些带文件夹的叫包或者轮子
--include-module=复制比如when.py 这些以.py结尾的叫模块
实例: nuitka --mingw64 --standalone --show-progress --show-memory --windows-disable-console --plugin-enable=tk-inter
--plugin-enable=numpy --windows-icon-from-ico=ych.ico --output-dir=out ShipmentReportToolForCS.py
更详实的内容请参见参考链接。
参考连接:https://zhuanlan.zhihu.com/p/133303836