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,文件夹中就会生成应用程序所需要的链接库

==================================
 
posted @ 2024-03-15 15:43  [BORUTO]  阅读(63)  评论(0编辑  收藏  举报