QT制作程序安装包超详细教程

目录

一.打包发布应用程序

[二.使用QT Installer Framework制作安装包](#二.使用QT Installer Framework制作安装包)

[2.1下载Qt Installer Framework](#2.1下载Qt Installer Framework)

2.2添加环境变量

​2.3配置文件

2.3.1将之前打包的程序放在data文件夹

2.3.2修改配置

2.4最终生成安装包


一.打包发布应用程序

参考VS+QT发布程序详细步骤,以及遇到的问题-CSDN博客

二.使用QT Installer Framework制作安装包

2.1下载Qt Installer Framework

下载链接

Index of /official_releases/qt-installer-framework

选择最新版本

选择windows x64

下载好安装包后一直点击下一步即可(默认安装路径最好不要更改)

2.2添加环境变量

默认安装的路径在这里

C:\Qt\QtIFW-4.8.1\bin

后续我们需要使用到刚刚下载安装的框架中的binarycreator,所以需要将bin目录添加到环境变量中

2.3配置文件

配置文件从零开始步骤繁琐,我们可以利用Qt Installer Framework中提供的例子

此处使用startmenu这个例子。将startmenu内容复制一份在其他地方使用。

2.3.1将之前打包的程序放在data文件夹

将最最开始打包好的程序.exe以及同级目录所有的依赖文件放入D:\VSProject\test\packages\org.qtproject.ifw.example\data文件夹下

以我为例就是将打包好的下图所示文件

放入D:\VSProject\test\packages\org.qtproject.ifw.example\data

2.3.2修改配置

在config文件夹中有config.xml

<?xml version="1.0" encoding="UTF-8"?>

<Installer>

<Name>这里填写程序名称</Name>

<Version>这里填写版本号</Version>

<Title>这里填写标题:例如程序安装向导</Title>

<Publisher>版权所有者</Publisher>

<!-- Directory name is used in component.xml -->

<StartMenuDir>要生成的windows开始菜单目录</StartMenuDir>

<TargetDir>@HomeDir@/bms(这里代表的意思是默认安装路径)</TargetDir>

</Installer>

接下来修改包信息文件package.xml

<?xml version="1.0" encoding="UTF-8"?>

<Package>

<DisplayName>***测试程序</DisplayName>

<Description>仅供测试使用,版权归***所有.</Description>

<Version>1.0.0</Version>

<ReleaseDate>发布时间</ReleaseDate>

<Default>true</Default>

<Script>installscript.qs</Script>

</Package>

2.4最终生成安装包

搜索打开qt命令行界面,cd到刚刚的tset文件夹

使用该命令binarycreator.exe -c config/config.xml -p packages 你的程序名名称.exe -v

最后显示执行完毕。

在test目录下就会看到生成的安装包。,双击打开就会打开安装向导。

相关推荐
会员源码网1 小时前
构造函数抛出异常:C++对象部分初始化的陷阱与应对策略
c++
xlp666hub3 小时前
Leetcode第二题:用 C++ 解决字母异位词分组
c++·leetcode
不想写代码的星星4 小时前
static 关键字:从 C 到 C++,一篇文章彻底搞懂它的“七十二变”
c++
xlp666hub20 小时前
Leetcode第一题:用C++解决两数之和问题
c++·leetcode
不想写代码的星星1 天前
C++继承、组合、聚合:选错了是屎山,选对了是神器
c++
不想写代码的星星2 天前
std::function 详解:用法、原理与现代 C++ 最佳实践
c++
Felix_One3 天前
Qt 串口通信避坑指南:QSerialPort 的 5 个常见问题
qt
樱木Plus4 天前
深拷贝(Deep Copy)和浅拷贝(Shallow Copy)
c++
blasit6 天前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
肆忆_7 天前
# 用 5 个问题学懂 C++ 虚函数(入门级)
c++