QT 打包dll,发布exe记录

一 打包目的
qt直接产生的exe是链接了动态库,所以可以执行,不报错,但是一旦脱离本机环境,我们需要讲所有用到的动态库和exe文件,用enigma virtual box 封包。
二 具体过程
1 下载好需要的evb软件,qt自带的搜索exe所用到的dll文件工具
windeployqt ,新建一个文件夹,将****.exe放进其中,然后windows命令行进入,直接执行 :windeployqt .exe,会产生很多dll文件及包含dll的文件夹,但是有时候会缺乏很多文件在这里插入图片描述
保证是这个列表,plugin目录来源于qt-vlc库的bin目录,有些时候qt自带的dll显示工具无法找到第三方dll,所以可以用process explorer来看真实的dll 依赖,直接运行程序即可看到所有的dll,记得在view-》lower pane view 选中dll,找不到的dll去qt安装路径去找即可。
三 最后
1 选择好全部的dll文件后,就可以封包,记得在evb软件里面的文件选项配置,选择压缩,退出时删除文件不要选择,最后主程序就是你要封包的程序,虚拟文件就是路径,默认******_boxed.exe生成。
四 注意
要保证QT的release 编译也要配套使用第三方的release版本,不要和debug搞混,如果采用第三方的静态库,必须这次的protobuf,不需要添加。

猜你喜欢

转载自blog.csdn.net/qq_36184671/article/details/85198505