QT打包的两种方式
- 一个是QT5自带的windeployqt(不需要下载安装),它可以找到程序(exe)用到的所有库文件,并且都拷贝到exe程序的当前文件。此时打包的exe较小,需要和拷贝进来的文件放一起运行,也可以将这些文件再次打包成一个大的exe文件,此时用的第二种打包方式。
- 另一个是Engima Virtual Box,这是下载链接Engima Virtual Box,软件图标如下:
- 打开QT Creator在debug或者release下运行,(我用的debug)
- 到项目工程下面找生成的exe文件
3.在开始菜单中找到QT5.7 64-bit for Desktop打开命令行
4.命令行进入要打包的exe目录下 cd /d exe所在目录 cd /d表示可跨磁盘
5.输入命令行:windeployqt 程序名 敲击回车。这一步操作是将所需的库文件全都拷贝到exe程序的当前文件:
在当前目录下是可以点击运行exe程序的,此时库文件都已经拷贝到当前目录下了
- 继续将第一步生成的一堆文件打包
1. 打开运行Enigma Virtual Box: Enter Input File Name输入要打包的exe路径,Enter Output File Name生成的exe文件路径,默认情况下是输入的exe路径,Files 所有打包的文件(第一步生成的一堆文件)
2. 点击Process开始打包
3. 打开目录最后生成的_boxed.exe文件即可运行
注意:换台端脑若出现缺少vcruntime140d.dll vcomp140d.dll等几个c++库,可在C:\Windows\SysWOW64目录下找到拷贝到最后生成的大exe文件夹下,或者在第二步时一起打包。