QT官方采用的是动态链接库的形式,因此想要真正发布程序,则需要把DLL一个个复制粘贴到.exe文件目录下,这不仅费时费力,还存在较大的可能漏粘。
因此我们可以用官方的打包工具,对当前可执行程序所依赖的DLL进行搜索,并自动添加到程序目录底下。
使用windeployqt工具,进行打包发布
windeployqt工具藏在QT的编译器目录下,比如博主的是在E:\QT\5.9.5\mingw53_32\bin下
我们可以把该目录添加到环境变量中,方便使用
使用方法也很简单,输入所需要打包的exe所在的目录,并执行下面的命令即可
1 |
windeployqt F:\QT\code\camera_color\re\untitled.exe |
可以看到所需要的DLL已经自动粘贴到项目底下
但需要注意的是,有一些非QT的DLL还是需要自己粘贴进去的,比如opencv。这一点暂时还没找到好的解决方案,只能傻瓜式的手动粘贴。
后面还有几种打包方法….更新中…