概述

Qt Installer Framework(缩写QIF)是Qt官方用于生成软件安装包的工具。包括Qt Creator和Qt Installer Framework自身的安装包都是由这个工具制作的。详细说明请访问QIF的官方文档。

环境

我使用的环境是Windows7 64位和Qt Installer Framework 2.0.3

下载

首先根据自己的平台(Linux或Windows等)去Qt官网下载Qt Installer Framework的安装包或者源码。为了简单起见,我下载是安装包。然后像普通软件那样双击安装。

目录结构

安装好后,并不是一个直接可用的图形界面软件。而是提供了一些可执行的工具程序(Windows下是exe文件),然后根据规则,利用这些工具生成安装包。
假设安装在D:,则生成目录D:\QtIFW2.0.3,其中2.0.3是版本号。目录结构如下图所示。

1、bin

bin中包含的就是我们需要用到的工具。最简单地,我们只用其中一个,叫binarycreator.exe

2、doc

doc中包含帮助文档。文档的格式是网页(html)。也可以去官方网站上查看文档。文档是英文。不过很详细。

3、examples

examples中包含了很多Qt Installer Framework的例子。初学者只需要将例子作为模板,按照自己的情况修改即可。

4、Licenses

Licenses中包含了Qt Installer Framework的Licenses,例如LGPL等。

准备

1、目录结构

用QIF生成安装包时,必须先按照规范建立目录结构。
参考examples中的目录结构,例如examples/tutorial目录中的结构如下:

规范的目录结构中,包含一个config文件夹和一个packages文件夹。其中config文件夹中只包含一个config.xml文件,用于描述软件以及安装包的一些信息。packages文件夹包含了安装包的信息描述、行为描述以及数据。其中,packages中的每一个子文件夹都表示不同的软件,或者软件的一个模块或者部件,例如com.vendor.product1、com.vendor.product2等等。
其结构可能如下

-packages- com.vendor.root- data- meta- com.vendor.root.component1- data- meta- com.vendor.root.component1.subcomponent1- data- meta- com.vendor.root.component2- data- meta

对于简单的软件,可能只有一个模块,对应一个文件夹。
每个子文件夹下都有两个文件夹data和meta,前者包含了所有软件的数据,包括可执行文件、链接库文件、配置文件等等,将所有这些文件压缩成.7z压缩包后,放入此文件夹;后者包含了至少3个文件,installscript.qs、license.txt、package.xml,分别用于描述安装行为、许可信息、模块或软件的描述(用于选择模块的页面上),其中license.txt文件名可变,只需要在脚本中做相应修改即可。

2、config.xml

config/config.xml定义了安装程序的行为。
例子如下:

<?xml version="1.0" encoding="UTF-8"?>
<Installer><Name>Your App</Name><Version>1.0.0</Version><Title>Your App Installer</Title><Publisher>You</Publisher><StartMenuDir>Your App</StartMenuDir><TargetDir>@HomeDir@/Your App</TargetDir>
</Installer>

其中各个标签的含义如下:

  • < Name> 软件名称
  • < Version> 版本号
  • < Title> 安装程序窗口标题
  • < Publisher> 发布者名称
  • < StartMenuDir> 要生成的windows开始菜单目录
  • < TargetDir> 默认安装路径

config.xml支持的标签很多,不过多数都是可选的,只有上述这些是必须的。请参考官方文档,根据需要添加标签。

3、data

data文件夹下包含了你要发布的软件的全部数据文件,包括可执行文件、链接库文件、数据库、配置文件等等。将所有文件用.7z格式打包后,放在data文件夹下即可。

4、meta/installscript.qs

installscript.qs的语言类似于javascript,用于定义安装软件包的行为(如果软件有多个组件,每个分别配置),例如是否默认选中、是否生成开始菜单快捷方式、是否生成桌面快捷方式、是否有额外的安装步骤需要添加到常规步骤中。具体说明请参考examples中的例子以及官方文档。

5、meta/license.txt

将软件有关的许可信息,写在此文件中,会在安装过程中显示并要求用户同意。
文件名称可以修改,不过修改过后要修改package.xml中对应的脚本。

6、meta/package.xml

meta/package.xml定义了安装包在处理此部件时要显示的信息。
例子如下:

<?xml version="1.0" encoding="UTF-8"?>
<Package><DisplayName>The main component</DisplayName><Description>the main component of your app</Description><Version>1.0.0-1</Version><ReleaseDate>2016-06-01</ReleaseDate><Name>com.vendor.product</Name><Licenses><License name="Your App Agreement" file="license.txt" /></Licenses><Default>script</Default><Script>installscript.qs</Script><UserInterfaces><UserInterface>page.ui</UserInterface></UserInterfaces>
</Package>

其中各个标签的含义如下:

  • < DisplayName> 显示的名称
  • < Description> 描述
  • < Version> 部件的版本号
  • < ReleaseDate> 发行日期
  • < Name> 部件名称(与文件夹名一致)
  • < Licenses> 许可信息名称以及许可文件名
  • < Script> 脚本文件
  • < UserInterfaces> 额外的界面(如果需要的话,而且需要去installscript.qs中配置)

同样地,支持的标签很多,不过多数都是可选的,上述这些也不一定是必须的。请参考官方文档,根据需要添加标签。

制作安装包

完成上述准备工作后,使用binarycreator.exe工具生成安装包。
需要在命令行中操作。在开始菜单中搜索cmd,或按下win+r输入cmd回车,打开命令行。转到刚才准备好的目录中。
例如:

C:\> D:
D:\> cd QtIFW2.0.3\examples\yourapp
D:\ ..\..\bin\binarycreator.exe -c config\config.xml -p packages YourInstaller.exe

其中,路径一定要对,YourInstaller.exe是安装包文件名,换成你想要的名称即可。

转载于:https://www.cnblogs.com/xia-weiwen/p/6857333.html

使用Qt Installer Framework制作软件安装包相关推荐

  1. 使用HM NIS Edit制作软件安装包

    使用HM NIS Edit制作软件安装包 使用HM NIS Edit制作软件安装包 背景 准备工作 制作流程 结束语 背景 由于参与的横向项目需要,需要对实验室开发的VSP处理软件进行安装包制作,主要 ...

  2. 《PyInstaller打包实战指南》制作软件安装包

    制作软件安装包 下载并安装Inno Setup 快速制作安装包 打包完之后,如果能制作一个安装程序发送给客户,那体验感会更好,软件也可以显得更加专业.在本小节,笔者会教大家如何使用Inno Setup ...

  3. 为Qt应用程序制作maemo安装包

    前段时间开始在Qt上写程序,因为只给我提供了一个N900,也没有人培训,通过自己的摸索,写了一些应用程序,程序可以在N900上做测试,但是我希望我写的应用程序可以被安装到这步N900上运行,开始探究如 ...

  4. 使用开源软件Inno Setup制作软件安装包

    Inno Setup是一款免费开源的软件安装包制作工具,可以对工程的可执行文件进行打包.设置安装路径以及注册到系统中. 安装包下载地址:Inno Setup Downloads 选择欢迎界面的Crea ...

  5. 使用开源安装包制作工具Inno Setup制作软件安装包

    大家在进行Winform.MFC开发的时候,如果工程中引用了大量的dll,和配置文件的时候,整个release文件夹会显得文件又多又繁琐,特别是发送给客户使用过程中,还要担心某个dll被误删除,而导致 ...

  6. NSIS制作软件安装包

    NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序.它提供了安装.卸载.系统设置.文件解压缩等功能.这如其名字所指出的 ...

  7. 使用 NSIS 制作软件安装包

    NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序.它提供了安装.卸载.系统设置.文件解压缩等功能.这如其名字所指出的 ...

  8. Windows程序安装包制作——Qt Installer Framework

    0 前言 Qt提供了制作安装包的工具,本文介绍如何安装和使用. 1 下载 到这里下载QtInstallerFramework-win-x86.exe,即可. 2 安装 双击安装包即可启动安装,保持默认 ...

  9. Windows软件安装包制作工具汇总

    0 前言 软件开发最终离不开安装包的制作,本文重点总结一下有哪些可用的工具. 1 Windows Intaller 使用方法见参考资料[1]. 2 InstallShield 3 EasySetup ...

最新文章

  1. 字节跳动年度《算法资料合集》首次公开,限时下载!
  2. AI时代,产品经理需要掌握的5项新技能
  3. (二)行为化参数传递代码
  4. c# 怎样从bitmap初始化image类_C#二维数组初始化概括(新手篇)
  5. sql server select和set赋值的区别
  6. MySQL数据以全量和增量方式,向ES搜索引擎同步流程
  7. easyui dialog 不执行页面js_Spring Security(六):前端菜单,角色权限页面的搭建
  8. 网络神偷 v7.6 免费
  9. zblog小程序模板-青春小程序模板
  10. 【安全系列】beef-xss攻击示例
  11. renderdoc捕获的mesh,通过插件一键导出成fbx
  12. 机械祭天法力无边:练习3.6:编写一段程序,使用范围for语句将字符串内的所有字符用X代替。
  13. Longest Commen Prefix
  14. var是java关键字,Java 中的 var 关键字及代码示例
  15. 2012年6月婚假四川游记
  16. 使用Mybatis时, 在*Mapper.xml中出现大于号小于号的问题及两种解决方案
  17. 自动加解密请求包响应包插件(autoDecoder)
  18. 异构系统中的UUV、异构系统模型统一化及单应矩阵在异构系统中的应用
  19. 「天威诚信说法」不见面也能签劳动合同啦
  20. CentOS7.6安装Git(IUS方式)

热门文章

  1. php xss速查表,2020跨站脚本[xss]速查表 xss cheat sheet
  2. Spring整合Hibernate中自动建表
  3. document.forms用法示例介绍
  4. Eclipse下搭建Hadoop开发环境,并运行第一个实例
  5. gin自定义日志格式
  6. ssacnf和sprintf实战取ip地址
  7. ARM汇编:加载和存储指令集(六大类)---LDR(ADR)、LDRB、LDRH、STR、STRB、STRH
  8. 《深入理解计算机系统》读书笔记四:操作系统的抽象
  9. 今天,小程序正式支持 SVG
  10. 51CTO-风哥-ORACLE学习计划(持续更新中)