Pyside6 写完项目之后,打包往往是个不小的难题,特别是和 pyqtgraph 组合在一起时,用 Nuitka 基本都会打包失败。
如果改用 pyinstaller 打包,又容易出现在部分系统上无法兼容的情况(不包含 win7)。
因此这篇教程直接给出一个百分百成功打包 Pyside6 + pyqtgraph 项目的方案,其他 Qt 项目也可以参考同样的思路。
1、安装库
pip install Pyside6 pyqtgraph kkpack
2、编写代码
以下为示例截图:

目录结构:
├── .kkpack
├── UI
│ ├── MainWindow.ui
│ └── MainWindow_ui.py
├── Windows
│ └── MainWindow.py
├── kkpack.toml
├── main.py
└── requirements.txt
requirements.txt:
Pyside6
pyqtgraph
3、打包
生成配置文件
kkpack init
kkpack.toml 文件是通过 kkpack init 自动生成的。
打包
kkpack main.py
首次打包时,kkpack 需要预载一次 Pyside6 和 pyqtgraph,用来确认依赖结构。
打包完成后的文件夹截图:

4、运行
双击 main.exe 运行:

首次在客户机器上运行,会需要下载依赖;以后再次使用时,就不需要重新下载了。
成功运行画面:

kkpack 解决了 Qt 项目打包难、打包慢的痛点。如果不需要用户在线下载依赖,只需在配置文件中把 mode 改为 offline 即可。
|