Qt 程序打包发布
Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,Qt 官方开发环境里自带了一个工具:windeployqt.exe。在Qt安装目录如:C:\Qt\Qt5.7.0\5.7\mingw53_32\bin\windeployqt.exe。
在集成开发环境 QtCreator 中可选择 “Qt Widgets Application” 或 “Qt Quick Application” 两种方式生成图形界面应用程序。
1. Qt Widgets Application 方式
把生成的exe程序,复制到一个文件夹下,如 D:\Test\test.exe.
打开cmd, cd D:\Test
D:\Test C:\Qt\Qt5.7.0\5.7\mingw53_32\bin\windeployqt.exe test.exe
把程序需要的dll复制到此文件下。
2.Qt Quick Application
D:\Test C:\Qt\Qt5.7.0\5.7\mingw53_32\bin\windeployqt.exe test.exe --qmldir C:\Qt\Qt5.7.0\5.7\mingw53_32\qml
这样程序下有很多dll,程序占用的空间又很大。有个很好用的打包软件 Enigma Virtual Box(官方有免费版本可用),可以把依赖的dll和exe打包成一个exe.
把程序依赖的所有dll和文件复制到一个文件夹下。
打开Enigma Virtual Box,指定打包程序exe,全选程序依赖的dll和文件拖放到 Enigma Virtual Box文件添加里面。
打开文件选项,勾选"启用文件虚拟化" 和 "压缩文件"
点击执行封包