Qt - 程序打包&发布
一、功能描述
4种程序打包方式
1、拷贝dll方式
2、Qt自带的 mingw(最推荐)
3、命令行解释器应用程序cmd
4、脚本文件
二、错误提示
当时使用方式3/4时,若出现以下提示:
1、提示:

2、打包好的文件夹中没有如下两个dll

3、运行打包好的软件提示


4、原因:
没有配置MinGW编译器的环境变量
5、解决办法:将 相关编译器的 路径添加到Path环境变量中,并重启;
所有相关编译器二进制文件(包括g++)所在的位置:D:\QT\QT5.12\Tools\mingw730_64\bin (D:\QT\QT5.12:我的Qt安装位置)

三、程序打包
方式1:拷贝dll
1、创建一个文件夹,把 生成目录->release目录->.exe文件 复制过来
2、把 安装目录->Qt5.6\5.6\mingw49_32\bin目录下 6个dll文件 复制过来

3、安装目录->Qt5.6\5.6\mingw49_32\plugins目录中把platforms文件夹(文件夹不要改名)直接复制过来,里面只保留qwindows.dll文件;
4、若程序中要用到png意外格式的图片时 安装目录->Qt5.6\5.6\mingw49_32\plugins目录中imageformats文件夹(文件夹不要改名)直接复制过来,里面只保留自己用到的文件格式的dll文件即可;
5、若程序中用到数据库 安装目录->Qt5.6\5.6\mingw49_32\plugins目录中sqldrivers文件夹(文件夹不要改名)直接复制过来,里面只保留自己用到的数据库的dll文件即可;
6、需要啥拷贝啥,
好处:整个程序包比较少;坏处:拷贝dll麻烦,而且容易拷贝不全;
(建议使用方式2/3/4)
方式2:用mingw生成dll (推荐)
1、 拷贝程序生成程的exe文件
2、创建一个文件夹命名为client(文件夹名可自定义),把生成的.exe文件复制到刚刚创建的client文件夹下;
2、点击输入框空白部分,会显示出文件夹路径,复制路径
3、按下win键 找到Qt mingw,选择对应的版本点击打开, (我程序使用的是Qt 5.14.2(MinGW 64-bit)版本)
5、在打开的小黑屏上输入 windeployqt,加个空格 ,然后点击鼠标右键,刚才复制的app路径会自动粘贴上,按下回车键(enter),开始打包;
6、client文件夹中就会生成Client.exe应用程序所需要的链接库等;双击Client.exe文件即可启动程序
方式3:用cmd生成dll(上一种方式的改版)
1、创建一个文件夹demo(文件夹名自定义),把 生成目录->release目录->.exe文件 复制过来;
2、Win键 + R,输入cmd,确定;

3、输入如下:
①windeployqt.exe所在位置
②要打开软件.exe的位置

4、回车,等待,打包完成

方式4:脚本文件生成dll
1、创建一个文件夹demo(文件夹名自定义),把 生成目录->release目录->.exe文件 复制过来;
2、在文件夹demo中创建一个zz_MakePack.bat(名称自定义)脚本文件;

3、修改zz_MakePack.bat中的内容,保存(标红部分,根据实际情况更改)
set PATH=D:\QT\QT5.12\5.12.1\mingw73_64\bin\;%PATH%
D:\QT\QT5.12\5.12.1\mingw73_64\bin\windeployqt.exe test1.exe

①mingw所在目录
②windeployqt.exe所在目录
③要打包的程序名
4、双击zz_MakePack.bat,文件夹中就会生成应用程序所需要的链接库

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!