当前位置: 首页 > news >正文

【Qt】如何使用QtInstallerFramework打包Qt程序

使用 Qt Installer Framework 可以将你的 Qt 程序打包成一个带有安装向导的安装包,适用于 Windows、Linux 和 macOS 平台。以下是完整的打包流程,以你当前开发的 ecgexport 应用为例。


🧰 一、准备工作

1. 安装 Qt Installer Framework

  • 下载地址:Index of /official_releases/qt-installer-framework
  • 推荐版本:4.5.x(目前最稳定)
  • 安装完成后会包含以下关键工具:
    • binarycreator
    • installerbase
    • archivegen

📁 二、准备你的应用程序目录结构

建议目录结构如下:

myapp/
├── config/
│   └── config.xml
├── packages/
│   └── com.mycompany.myapp/
│       ├── meta/
│       │   └── package.xml
│       └── data/
│           └── ecgexport.exe (或你的程序 + 所有依赖)
└── installer/└── installerbase.exe

🛠️ 三、配置文件说明

1. config/config.xml —— 全局配置

<?xml version="1.0" encoding="UTF-8"?>
<Installer><Name>xx报告导出工具</Name><Version>1.0.0</Version><Title>xx文件导出安装程序</Title><Publisher>MyCompany</Publisher><StartMenuDir>MyApp</StartMenuDir><TargetDir>@HomeDir@/MyApp</TargetDir>
</Installer>

2. packages/com.mycompany.myapp/meta/package.xml —— 包描述

 
<?xml version="1.0" encoding="UTF-8"?>
<Package><DisplayName>xx导出模块</DisplayName><Description>用于导出xx报告的桌面应用</Description><Version>1.0.0</Version><ReleaseDate>2025-04-05</ReleaseDate><Default>true</Default><Script>installscript.qs</Script>
</Package>

你可以添加可选脚本 installscript.qs 来实现自定义安装逻辑。


🧱 四、打包你的程序

1. 收集所有依赖项

使用 Qt 的 windeployqt 工具收集依赖库:

windeployqt --dir deploy_dir ecgexport.exe

这会自动把 Qt 插件、dll 等复制到 deploy_dir 目录中。

2. 将程序复制到 data/ 目录

cp -r deploy_dir/* myapp/packages/com.mycompany.myapp/data/

📦 五、生成安装包

进入 myapp 根目录执行:

binarycreator -c config/config.xml -p packages my_installer.exe

生成的安装包为:my_installer.exe


🖼️ 六、美化安装界面(可选)

你可以通过以下方式定制安装器外观:

  • 在 config.xml 中设置图标:
    <Logo>path/to/icon.png</Logo>
  • 使用 installerbase 模板替换默认皮肤(高级功能)

✅ 七、测试安装包

双击运行 my_installer.exe,测试是否能正常安装并运行你的程序。


🧪 八、常见问题排查

问题解决方案
安装后无法运行缺少 VC++ 运行时,请确保目标系统已安装
中文乱码设置合适的字体和编码支持
依赖缺失检查是否完整使用 windeployqt
启动慢可尝试静态编译(需商业授权)

📌 示例总结(以你的 ecgexport 为例)

# 步骤 1:部署依赖
windeployqt --dir deploy ecgexport.exe# 步骤 2:复制到 data 目录
cp -r deploy/* myapp/packages/com.mycompany.myapp/data/# 步骤 3:构建安装包
cd myapp
binarycreator -c config/config.xml -p packages ecgexport_installer.exe

最终你会得到一个名为 ecgexport_installer.exe 的安装包,可在任意 Windows PC 或 Server 上运行。


如需进一步集成到 CI/CD 流程、自动版本号管理、签名打包等,也可以继续提问。

http://www.xdnf.cn/news/1002853.html

相关文章:

  • OpenCV CUDA模块图像变形------对图像进行上采样操作函数pyrUp()
  • 134. Gas Station
  • 画图使用说明书
  • 使用adb 抓取perfetto-trace的注意事项
  • [Blender] 高质量材质推荐第四弹:25-30号精选纹理资源详解
  • iOS App上线前的安全防线:项目后期如何用Ipa Guard与其他工具完成高效混淆部署
  • 安全-Linux基线核查项点
  • Web APIS Day06
  • 面向对象 设计模式简述(1.创建型模式)
  • 脱离 Kubernetes,基于原生 Spring Cloud + 云 API 的轻量级自管理微服务平台架构设计
  • pikachu靶场通关笔记27 SQL注入10-宽字节注入
  • 网络安全攻防领域证书
  • leetcode 从中序与后序序列 or 从前序与中序序列 构造二叉树 java
  • docker 网络
  • 【MV】key_moments 与 continuous_timeline的编排权衡
  • Git 清理指南:如何从版本库中移除误提交的文件(保留本地文件)
  • 解决数字超出不会自动换行问题
  • HNCTF部分总结复现
  • 力扣刷题——二分查找
  • Android 开发中,Intent 和 Bundle 组件间传递数据的几种方式
  • 基于Node.js的线上教学系统的设计与实现(源码+论文+调试+安装+售后)
  • 如何“下载安转Allure”?
  • #pragma pack的作用
  • 海外广告投放|FB IG 速推帖子有效吗?
  • 2.倒排索引
  • Mitsubishi GX Works3 / GOT3 的惡意工程混淆邏輯注入攻擊
  • Parasoft C++Test软件集成测试(部件测试)_实例讲解
  • C++的学习路径
  • 第一个简单的爬虫
  • 一起了解--CAST函数