IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> QT Creator 应用程序*.exe文件打包发布详细教程【绿色便携形式 和 安装包形式】 -> 正文阅读

[开发工具]QT Creator 应用程序*.exe文件打包发布详细教程【绿色便携形式 和 安装包形式】

??说明:本文相关操作均基于 Windows10 操作系统 + Qt应用程序框架(5.14.1) + Qt Creator 集成开发环境(4.11.1) +MinGW编译环境,Qt 及 IDE的版本查询(Qt Creator菜单栏→帮助→About Qt Creator)。

一、.exe文件图标修改

??在打包发布程序之前,我们可能需要先给可执行程序(.exe文件)一个好看的图标。首先我们知道,可以通过 “Qt Creator IDE→设计→属性→windowIcon” 属性直接设置软件运行后的主窗体图标,或者直接通过setWindowIcon(QIcon("你的图片路径"))函数也可以设置。但要设置生成的 .exe 文件的图标,则需要以下步骤。

  1. 选择适合你程序的 .ico 图标,推荐网址:阿里巴巴矢量图标库(免费),下载好后放到你的工程文件夹中。
  2. 新建myApp.txt文本文件在其中输入下面一行代码:
IDI_ICON1 ICON DISCARDABLE "myApp.ico" //双引号中是你的图标名称
  1. 然后修改后缀名 myApp.txt → myApp.rc (也可以直接在IDE中添加资源文件 “Add New→Qt→Qt Resource File),将该文件放在工程文件夹中并添加到工程中(添加现有文件到工程)。
  2. 双击工程文件在最后添加如下一行代码:
RC_FILE += myApp.rc   //你的资源文件名
  1. 最后,重新构建运行你的程序即可。

二、绿色便携版—打包教程

??绿色便携版提供一个文件夹,该文件夹可以拷贝到任意Windows系统的电脑上通过双击 .exe 文件直接运行,无需安装 Qt 环境。假设新建文件夹 ”GreenSoftwarePack“ ,步骤如下:

  1. 调整工程编译运行方式为 Release,如下图所示。
    在这里插入图片描述

  2. 构建运行程序后,将出现相应的基于 release 版本构建的文件夹。
    在这里插入图片描述

  3. 进入该文件夹下的 release 文件夹,找到 " 工程名.exe " 文件,将该 .exe 文件拷贝到绿色便携版文件夹 ”GreenSoftwarePack“ 。此时,如果你在安装 Qt 的时候将各种库的路径添加到了环境变量中,在你的本机上双击该 exe 文件,有可能是能运行成功的,但是直接把该文件拷贝给到别人的机器上是运行不了的,因为缺少相关的动态库文件,手动拷贝各种所需的库文件虽然也是一种解决方法,但没有这么干的 ( ?? ω ?? )y 。

  4. 为此,Qt 自带了一个拷贝 .exe 程序依赖库的工具 —— windeployqt 。按 Win+Q 键搜索 qt ,调出你的编译器,我用的是 MinGW,如果你安装 Qt 应用程序框架的时候把 bin 目录添加到了环境变量,也可以直接通过控制台进行下面的操作。
    在这里插入图片描述

  5. 输入如下命令,跳转到你要打包的文件夹路径下(也就是刚刚创建的绿色便携包文件夹 GreenSoftwarePack)。

cd /d C:\Users\Administrator\Desktop\GreenSoftwarePack

在这里插入图片描述

  1. 输入命令: windeployqt ***.exe ,其中***.exe是你的 .exe 文件名。windeployqt工具将把该exe程序所依赖的库文件拷贝到该文件夹下。
    在这里插入图片描述
  2. 正常情况下,此时的绿色便携版文件夹已经可以拷贝到其他的机器上正常运行,但也有可能出现其他机器上仍然提示缺少xxx.dll的情况,这时,需要手动将该dll文件拷贝到该文件夹中。

??还有一种情况就是,当使用 SQLite 数据库的时候,即使按照上面的步骤将所有数据库相关的 .dll 拷贝到了文件夹中,但涉及数据库相关的所有功能仍然都无法使用。这时候,首先看看你的数据库文件有没有建立,即有没有成功创建出 xxx.db 文件,若数据库文件已经成功创建,则可能是源代码中的问题,请逐步调试,若数据库文件都没有创建成功,请参考我的这篇博客:(博客中的方法也可能适用于其他 xxx.dll 不存在的情况)
Qt .exe文件打包发布,SQLite数据库无法使用?拷贝了dll也不行?

三、安装包版—打包教程

??绿色便携版提供一个 .exe 格式的可执行文件,运行该 exe 文件可以按照向导进行软件的安装,首先明确安装包版本的正常运行的前提是,上面的绿色便携版已经成功实现,双击其 exe 文件可以正常运行,且不存在问题。打包教程如下所示:

  1. 首先,我们要用到一个小软件:Inno Setup 。该软件为 Windows 程序提供免费的安装程序设计,且支持用脚本的方式修改程序安装设计步骤。Inno Setup 于 1997 年首次推出,如今在功能集和稳定性方面可与许多商业安装程序相媲美,甚至超过了许多。支持自 2006 年以来的每个 Windows 版本,包括现在最新的 Windows 11。
    官方下载地址:Inno Setup 官方下载地址,下载后按步骤安装即可。

  2. 安装成功后,运行软件,关闭欢迎界面,点击 ”File>New…“ ,然后点击【Next】。
    在这里插入图片描述

  3. 按照提示输入你的应用程序名称、版本、发布者、网站,然后点击【Next】,这些信息稍后会生成在脚本中,后期可以通过脚本进行修改。
    在这里插入图片描述

  4. 定义打包文件的输出路径和输出文件夹的名称,然后点击【Next】 。在这里插入图片描述

  5. 这时就用到了上面的绿色便携版,首先添加你要打包的应用程序的可执行文件,就是那个 .exe 文件,然后添加所有依赖的动态库文件、资源文件、配置文件,如下图中的红绿指示框所示。(可以把所有需要的文件放到一个文件夹里,然后点击 Add folder),点击【Next】。
    在这里插入图片描述

  6. 点击【Next】。
    在这里插入图片描述

  7. 创建快捷方式相关的选项,根据需要选择,点击【Next】。
    在这里插入图片描述

  8. 选择 “许可文件”,“安装前的文件”(如下图左侧的Readme 文件等,会在启动安装程序后弹窗展示),“安装后显示信息” 等,点击【Next】。
    在这里插入图片描述

  9. 选择安装模式是为计算机上所有用户安装,还是仅为当前用户安装等配置,点击【Next】。
    在这里插入图片描述

  10. 选择安装语言,点击【Next】。
    在这里插入图片描述

  11. 选择 “编译器输出文件夹”、“编译器输出基本文件名”、“安装程序图标文件”及“安装密码”,点击【Next】。
    在这里插入图片描述

  12. 选择是否使用 #define 编译指令,选择 yes 也就是在生成的脚本里使用 #define 宏定义一些常量,方便脚本编写,勾不勾选随意,然后点击下一步;
    在这里插入图片描述

  13. 点击 finish ,开始进行脚本的生成,脚本中的相关信息就是根据上面那些设置产生的。
    在这里插入图片描述

  14. 生成脚本后会提示是否立刻进行脚本的编译,可以直接编译,也可以自己看着修改一些内容,不用担心看不懂,就是上面设置的相关内容,看着修改即可,
    在这里插入图片描述

??如果更新了软件版本,重新打包了应用程序的exe文件,可以不重复上述流程,直接将之前的 exe 文件替换掉,然后用之前生成的脚本文件运行,即可生成新版本的 exe 安装包文件,当然脚本可以略做修改,比如软件版本等信息。

??脚本编译的最后产出就是 exe 安装包文件,双击 exe 安装文件即可进行软件安装,该安装文件可以在任意 Windows 机器上运行。

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-12-05 12:14:40  更:2021-12-05 12:15:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/24 9:38:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计