在基于Qt开发完应用程序后,对应用程序进行打包发布可以让其在没有Qt开发环境的目标机器上运行。
打包环境
操作系统:Windows 11 家庭中文版
Qt版本:5.14.2
编译器:MinGW 7.3.0 64-bit
1、基于windeployqt工具进行打包发布
1.1、在Qt Creator中,以Release方式构建项目,构建成功后会在指定的目录下生成相应的exe文件,如下图所示:
1.2、将上述exe文件复制到另一空白文件夹;
1.3、在任务栏的搜索框中搜索Qt 5.14.2 (MinGW 7.3.0 64-bit),单击打开;
1.4、在命令行中输入如下命令:
windeployqt xxx.exe
xxx.exe为exe文件所在的绝对路径,如下图所示:
windeployqt会分析该exe文件的依赖,并自动打包相关动态链接库到此文件夹。
1.5、打包发布成功后,目录内容如下所示:
双击该exe文件,可以正常运行;此时便可以将该文件夹进行压缩,在别的电脑上部署运行。
2、基于Enigma Virtual Box进行二次打包发布
基于windeployqt进行打包发布,除exe文件外,还需额外部署Qt相关动态链接库;而在此基础上,基于Enigma Virtual Box进行二次打包,最终无需部署Qt相关动态链接库,直接双击运行应用程序即可。
Enigma Virtual Box为免费软件,下载地址为:Software Protection, Software Licensing, Software Virtualization;选择下图所示Download按钮即可开始下载。
安装好Enigma Virtual Box后,可在主界面“语言”菜单,切换为中文显示。
2.1、点击“浏览”,选择待封装的主程序,封包程序默认生成在当前目录下,文件名默认加上“_boxed”;
2.2、点击“增加”,选择“增加文件夹[递归]”,选择待封包的主程序所在的文件夹;
2.3、“文件选项”中勾选“压缩文件”;
2.4、点击“执行封包”,等待执行完成;
2.5、封包完成后,会在指定目录下生成封包程序,如下图所示:
双击该exe文件,可以正常运行;此时便可以直接部署该exe文件在别的电脑上运行。