Qt Installer Framework(简称:QtIFW)概述
QtIFW提供了一组工具和实用程序,可以一次性创建安装程序,并在所有支持的桌面Qt平台上部署它们,而无需重写源代码。安装程序将在运行它们的平台上具有本机外观和感觉:Linux,Microsoft Windows和macOS。QtIFW是作为Qt项目的一部分开发的,框架本身使用Qt。然而,它可以用于安装所有类型的应用程序,包括(但不限于)使用Qt构建的应用程序。
Qt安装程序框架工具生成安装程序,其中包含一组页面,在安装,更新或卸载过程中指导用户。您可以提供可安装的内容并指定有关它的信息,例如产品和安装程序的名称以及许可协议的文本。
您可以通过向预定义页面添加小部件或添加整个页面来自定义安装程序,以便为用户提供其他选项。您可以创建脚本以向安装程序添加操作。
选择安装程序类型
你可以为最终用户提供离线/在线安装程序,具体取决于你的使用案例。
两个安装程序都安装一个维护工具,以后可用于添加,更新和删除组件。离线安装程序包含所有可安装组件,并且在安装期间不需要网络连接。联机安装程序仅安装维护工具,然后从Web服务器上的联机存储库下载和安装组件。
下载QtIFW
官网下载
这里我选择了最新版本4.5.2,如图所示:
注意:安装好后可将“C:\QtIFW-4.5.2\bin”(路径根据实际情况来)添加到环境变量,方便cmd使用binarycreator.exe。如何安装在这里就不做介绍了,傻瓜式安装即可~
创建安装程序
本节介绍创建安装程序必须完成的以下任务:
- 创建一个包含所有配置文件和可安装包的包目录。
- 创建一个配置文件,其中包含有关如何构建安装程序二进制文件和联机存储库的信息。
- 创建一个包信息文件,其中包含有关可安装组件的信息。
- 创建安装程序内容并将其复制到包目录。
- 使用该工具创建安装程序。
binarycreator
安装程序页面是使用你在配置和包信息文件中提供的信息创建的。
示例文件位于Qt安装程序框架存储库的目录中。examples\tutorial
创建包目录
创建一个目录结构,该结构反应安装程序的设计,并允许将来扩展安装程序。该目录必须包含config、packages子目录。
创建配置文件
在目录中,创建一个包含以下内容的调用文件:config.xml(放在config文件夹下)
<?xml version="1.0" encoding="UTF-8"?>
<Installer>
<Name>Your application</Name>
<Version>1.0.0</Version>
<Title>Your application Installer</Title>
<Publisher>Your vendor</Publisher>
<StartMenuDir>Super App</StartMenuDir>
<TargetDir>@HomeDir@/InstallationDirectory</TargetDir>
</Installer>
标签含义解析:
- Name:指定添加到页面名称和简介文本中的应用程序名称。
- Version:指定应用程序版本号。
- Title:指定标题栏上显示的安装程序名称。
- Publisher:指定软件的发布者。
- StartMenuDir:指定Windows“开始”菜单中产品的默认程序组的名称。
- TargetDir:默认安装路径。
有关配置文件格式和可用元素的详细信息,请参阅配置文件。
创建包信息文件
在这个简单的场景中,安装程序只处理一个被调用的组件。要向安装程序提供有关组件的信息,请创建一个名为
<?xml version="1.0" encoding="UTF-8"?>
<Package>
<DisplayName>The root component</DisplayName>
<Description>Install this example.</Description>
<Version>0.1.0-1</Version>
<ReleaseDate>2010-09-21</ReleaseDate>
<Licenses>
<License name="Beer Public License Agreement" file="license.txt" />
</Licenses>
<Default>true</Default>
<Script>installscript.qs</Script>
<UserInterfaces>
<UserInterface>page.ui</UserInterface>
</UserInterfaces>
</Package>
标签含义解析:
- DisplayName:指定组件列表中组件的名称。
- Description:指定选择组件时显示的文本。
- Version:指定安装程序版本(能够在更新可用时向用户提示更新)。
- ReleaseDate:指定此组件版本发布的日期。
- Licenses:指定包含许可证检查页面上显示的许可协议文本。
- Default:指定默认情况下是否选择组件。
- Script:指定要加载的脚本。
- UserInterfaces:要加载的页面列表。
有关包信息文件格式和可用元素的详细信息,请参阅包信息文件语法。
创建安装程序内容
将你的程序打包好(具体如何打包这里不做介绍),然后放入data文件夹下。如果是多个组件的话,要分配好文件夹。
创建安装程序二进制文件
Windows:
binarycreator.exe -c config\config.xml -p packages YourInstaller.exe
Linux or macOS:
binarycreator.exe -c config\config.xml -p packages YourInstaller
安装程序在当前目录中创建,这样你就可以将其交付给最终用户了。
macOS:
binarycreator.exe -c config\config.xml -p packages YourInstaller
安装程序在当前目录中创建,这样你就可以将其交付给最终用户了。