Qt 制作安装包

avatar
作者
猴君
阅读量:4

记录使用Qt工具制作一个安装包的过程

目录

1.准备工作

1.1检查Qt Installer Frameworks是否安装

1.2.安装Qt Installer Frameworks

1.3准备release出来的exe dll等文件

2.创建打包工程所需要的文件及目录

2.1创建子目录

2.2 创建工程文件

2.3 创建config/config.xml

2.4 创建packages/qWidget/meta/config.xml

2.5 创建packages/qWidget/meta/installscript.qs

2.6 创建packages/qWidget/meta/license.txt

3.拷贝需要打包的文件

4.使用Qt Creator编译生成安装程序

5. 安装、卸载、运行测试


1.准备工作

1.1检查Qt Installer Frameworks是否安装

Qt的安装路径下查找,比如D:\Qt\Tools\QtInstallerFramework 

不存在该目录就需要安装

1.2.安装Qt Installer Frameworks

找到D:\Qt\MaintenanceTool.exe,运行,选择QtInstallerFramework 安装

1.3准备release出来的exe dll等文件

如何生成release文件已经在这里

Qt 使用发布工具 windeployqt 来releaseicon-default.png?t=N7T8https://blog.csdn.net/castlooo/article/details/140473263

2.创建打包工程所需要的文件及目录

创建打包工程目录比如,用来构建打包工程所需要的目录结构

2.1创建子目录

InstallerExample/config  

InstallerExample/packages

InstallerExample/packages/qWidget

InstallerExample/packages/qWidget/data

InstallerExample/packages/qWidget/meta

2.2 创建工程文件

InstallerExample/qWidgetInstaller.pro

记事本编辑工程文件如下

TEMPLATE = aux INSTALLER = qWidgetInstaller    #生成的安装文件名称  qWidgetInstaller.exe INPUT = $$PWD/config/config.xml $$PWD/packages #$$PWD  pro所在的目录 demo.input = INPUT demo.output = $$INSTALLER demo.commands =binarycreator -c $$PWD/config/config.xml -p $$PWD/packages ${QMAKE_FILE_OUT} demo.CONFIG += target_predeps no_link combine QMAKE_EXTRA_COMPILERS += demo

2.3 创建config/config.xml

<?xml version="1.0" encoding="UTF-8"?> <Installer> 	<Name>qWidget</Name> 	<Version>1.0.0</Version> 	<Title>qWidget Created by Qt 6</Title> 	<Publisher>CC</Publisher> 	<StartMenuDir>qWidget</StartMenuDir>         <TargetDir>@HomeDir@/qWidget</TargetDir> 	<CreateLocalRepository>true</CreateLocalRepository> 	<WizardStyle>Aero</WizardStyle> 	<WizardShowPageList>true</WizardShowPageList> 	<WizardDefaultWidth>650</WizardDefaultWidth> 	<WizardDefaultHeight>430</WizardDefaultHeight> </Installer> 

2.4 创建packages/qWidget/meta/config.xml

<?xml version="1.0"?> <Package> <DisplayName>qWidget</DisplayName> <Description>qWidget</Description> <Version>1.0.0</Version> <ReleaseDate>2024-07-17</ReleaseDate> <Licenses> <License name="GNU Public License Agreement" file="license.txt" /> </Licenses> <ForcedInstallation>true</ForcedInstallation> <Script>installscript.qs</Script> </Package>

2.5 创建packages/qWidget/meta/installscript.qs

function Component() {     // default constructor }  Component.prototype.createOperations = function() {     // call default implementation to actually install qWidgets.exe!     component.createOperations();      if (systemInfo.productType === "windows") {         component.addOperation("CreateShortcut", "@TargetDir@\\qWidgets.exe", "@StartMenuDir@\\qWidget.lnk",             "workingDirectory=@TargetDir@"); 		         component.addOperation("CreateShortcut", "@TargetDir@\\qWidgets.exe", "@DesktopDir@\\qWidget.lnk",             "workingDirectory=@TargetDir@");     } } 

2.6 创建packages/qWidget/meta/license.txt

本软件采用Qt 6.7开源版本开发,遵循Qt开源版本使用的GPL v2/v3和LPGL v3等许可协议。本软件可以自由复制和分发,但需要遵守相应的开源许可协议。 

3.拷贝需要打包的文件

将需要打包的release文件 exe dll等拷贝到目录packages/qWidget/meta

4.使用Qt Creator编译生成安装程序

使用Qt Creator打开工程qWidgetInstaller.pro,点击构建项目按钮,查看编译输出结果,编译的结果较为缓慢一些

5. 安装、卸载、运行测试

将生成的安装程序,安装、卸载、运行测试一遍是否问题

生成的桌面图标如下,点击运行正常

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!