Qt 打包为可执行文件发布

一、打包为文件夹

1、Release 编译

  • Qt Creator 选择构建套件,切换到 Release 模式,不要 Debug
  • 执行「构建项目」,生成 release 目录下的.exe可执行文件

Debug 打包体积巨大,并且目标机器没有 debug 库会直接运行失败。

  • 然后将编译出来的exe文件复制 出来,另外创建一个文件夹,将它放进去

2、windeployqt 自动拷贝依赖库

  • 打开对应版本的 Qt 命令行终端

  • cd 进入你的 release exe 所在文件夹

    cd /d D:\project\build-xxx-Release

  • 执行 windeployqt,自动拷贝 dll、qml、插件、翻译文件

    如果是普通Widget程序

    windeployqt yourApp.exe

    如果是QML程序,必须加 --qmldir 指定qml源码目录

    windeployqt --qmldir D:\project\yourApp\qml yourApp.exe

执行完成后,当前目录会生成一堆 dll、plugins、iconengines 等文件夹。 此时把整个文件夹复制到别的 Windows 电脑,即可双击运行。

二、打包成单 exe 文件

windeployqt 出来是一堆散文件,想要单个 exe ,用Enigma Virtual Box(免费)

安装:

  1. 打开 Enigma Virtual Box
  2. Enter input file:选你的yourApp.exe
  3. Enter output file:输出单 exe 名字
  4. Add → Add Folder Recursively,把 windeployqt 生成的整个目录全部添加进去
  5. Files Options →勾选「Compress files」压缩
  6. Process,生成独立单文件 exe。

❗不推荐使用 upx 直接压缩 qt exe,容易报病毒、闪退。

觉得有帮助的话,打赏一下呗。。

相关推荐
布莱克6051 天前
单例模式详解:什么是单例模式,它能解决哪些问题?
开发语言·qt·单例模式
qq762118221 天前
windows Qt mingw 编译libzip
开发语言·windows·qt
skr爱码士1 天前
10_Qt Designer 与 UI 文件(.ui 原理、uic 编译、动态加载)
c++·qt·ui·客户端
IT爱学堂1 天前
QT原理与源码分析可以学到什么 QT视频课程 QT课程推荐 最新推荐
开发语言·qt
躺着听Jay1 天前
QT交叉编译
开发语言·qt
Quz1 天前
QML 焦点导航:Tab 顺序与方向键移动
qt
程与留1 天前
11_常用控件速查(上):QPushButton、QLabel、QLineEdit、QComboBox
c++·qt
Quz1 天前
QML 按键事件之方向控制
qt
Littlehero_1212 天前
QT自定义控件之内嵌报表(4)(源码开源)
开发语言·qt