QT项目打包
当写完一个QT项目之后需要把这个发给别人,让其他人可以使用,如何把Qt项目打包发给别人呢?
第一种打包方式:
首先选择Release重新构建项目;
构建好后打开文件所在文件,在release文件下找到.exe文件;
双击.exe文件时确实可以执行,qt界面也会出现,但是如果直接将这个文件压缩打包发送,别人根据就用不了,因为它需要依赖Qt环境才能运行起来,发送的文件夹中根本就没有Qt环境依赖的动态库和静态库;
怎么解决这个问题?
只需要将.exe文件复制粘贴到随便一个空白文件夹中;
打开终端,进入.exe所在的目录下:
//windeployqt XXX.exewindeployqt Plane.exe
执行后,可以发现在.exe目录下出现了很多文件,我们就可以将这个文件夹压缩打包发送给别人使用了;
问题:
如果出现了点击.exe文件没有任何反应的情况,可以尝试将这个构建文件(下面红色框选出的文件)全部删除,重新构建一下就行;
如果点击.exe文件出现报错的情况,可能是依赖缺少,重新执行 windeployqt Plane.exe 即可;
Enigma Virtual Box工具打包
虽然上述方法可以运行,但是别人收到这个压缩包后还要解压才能运行,还是比较麻烦,可以使用Enigma Virtual Box来进行 exe打包;
下载连接:
Software Protection, Software Licensing, Software Virtualization
下载好后,打开这个工具,选择要封装的.exe文件;封装好后的存储位置会自动生成;
点击左下角的Add,选择Add Folder Recursive,添加执行时所需要的依赖库和其他文件;添加成功后点击ok就开始打包了;
封装好后,我们去打开文件夹可以发现新增了一个XXX_boxed.exe的文件,点击就可以运行;
这样我们就封装好了,把这个文件转移到桌面上,点击也可以运行,直接将这个文件发送给别人,下载好后直接就可以运行项目,不用在解压了;