第一步:生成依赖库
QT在发布程序时往往由很多的依赖库环境需要一起打包,QT 编译器可以生成所有依赖,方法如下:
将编译好的release版本的exe程序单独放入一个文件夹,如图1.1所示,CopyMaster.exe放入D:盘下新创建的的“CopyMaster”文件夹。(建议放在根目录下以方便下一步用指令寻找)
在“”开始菜单“”中找到“QT x.x for Desktop”运行程序(如图1.2),并运行。如图1.3所示,用指令cd 到前面创建的CopyMaster文件夹中。然后执行“windeployqt xxx.exe”(不会Dos指令的按照图1.3中的来就OK,应该不会有人不会)
打开看到文件夹内就已经有所有的依赖了,如图1.4(这个只有系统依赖,不包括程序内资源依赖,有资源调用(如图片、音视频等)的话要自行复制加入)。
一般来说,将这个文件夹发个别人已经是可以将其中的可执行文件运行了。但在此推荐一款打包软件·Enigma Virtual Box
https://enigmaprotector.com/en/aboutvb.html这个是它的官网。
第二步 打包成一个exe
运行后的界面如下图2.1所示,简单明了就不具体讲了,第一行选择将要打包的exe,第二行生成位置,下面的是需要的依赖文件(处理exe可执行文件本身外其他都是),可以直接将依赖文件拖到下面的框内得到图2.2。
点击执行封包就得到的一个“原来可执行文件名称_boxed.exe”的新的exe文件,查看属性这个可执行文件比
原来的要大很多,这个是因为封包软件直接把它所有的依赖文件封装进一个可执行文件exe中了,现在就可以直接将exe发布在其他电脑上了。(Engine Virtual Box还有其他很多配置,留给大家自己探索吧,happy Coding!)。