Qt - 项目打包成exe

QT版本(5.13.2)window平台
所需软件:Enigma Virtual Box
使用命令台(下载QT时自带的):QT 5.13.2(MinGW 7.3.0 32-bit)

Qt - 项目打包成exe

一、运行编译转为release

  1. QT左下角,把原本debug模式转为release(如图)
  2. 切换过后,点击小锤子????编译一下
  3. 最后运行一下项目是否有问题

Qt - 项目打包成exe

  • 单独把release模式生成exe文件拿出来,只拿exe文件就行了
  • 注意:选择release版本下的
  • 我就在桌面上新建一个文件夹把exe复制进去(记住此路径,后面有用)
    Qt - 项目打包成exe
    Qt - 项目打包成exe

Qt - 项目打包成exe

二、使用官方工具windeployqt寻找依赖库

  • 首先检查下载下来的QT是否有这个执行文件(查看有无即可,无需点击操作)

Qt - 项目打包成exe

  • 使用官方工具,下载QT时自带的(QT 5.13.2(MinGW 7.3.0 32-bit) )

Qt - 项目打包成exe

  • 打开之后敲命令:…>cd \d …(需要打包的exe程序目录,就是刚才拷贝出来的exe程序所在的目录)
  • 注意:记得加上 \d,直接cd可能会没反应(如图)
    Qt - 项目打包成exe
  • 加上 /d ,切换到当前目录
    Qt - 项目打包成exe
  • 执行命令:windeployqt 程序名.exe
  • 之后就会生成一大堆东西
    Qt - 项目打包成exe
  • 做到这一步就已经完成打包了
  • 直接双击运行exe文件

Qt - 项目打包成exe

Qt - 项目打包成exe

三、再简化成只有一个exe可执行文件

  • 如需发给别人直接运行,则需要把整个文件目录里的东西都要发过去才能运行 —(这样做太麻烦,下面步骤直接把这些东西打包成只有一个exe可执行文件。之后只发这个生成后的exe文件,别人就可以打开了)
  • 运行软件 Enigma Virtual Box
  • 软件调为中文:默认英文,点击Language,选择Chinese,重启软件即可

Qt - 项目打包成exe

  • 选择增加 —> 增加文件夹[递归]

  • 选择生成一大堆东西所在目录文件夹即可
    Qt - 项目打包成exe

  • 默认确定

Qt - 项目打包成exe

  • 之后就看到这里多了文件

Qt - 项目打包成exe

  • 最后点击执行封包
    Qt - 项目打包成exe
  • 可看到生成的exe文件
    Qt - 项目打包成exe
  • 在文件夹中看到多了这个exe文件,之后直接发这个exe给别人,无需其他文件也可以运行
    Qt - 项目打包成exe