在Windows上开发QT程序,调试运行时正常,但直接双击exe运行却提示缺少各种dll,原因是直接运行的话需要将依赖的dll拷到exe所在文件夹。
每次手动拷贝的话太过麻烦还可能会有遗漏,实际上QT安装后就自带了打包工具windeployqt。在我这里它的所在目录为C:\Qt\Qt5.12.2\5.12.2\mingw73_64\bin。
使用方法:
从开始目录找到Qt 5.12.2(MinGW 7.3.0 64-bit)然后打开,显示在C:\Qt\Qt5.12.2\5.12.2\mingw73_64文件夹下。
上面说过windeployqt所在目录为C:\Qt\Qt5.12.2\5.12.2\mingw73_64\bin,所以我们进入bin子文件夹,然后操作。具体指令如下方命令行所示,格式为windeployqt.exe destApp.exe,这样就会自动生成QT运行所需的DLL了。
不过这个只对QT相关依赖有效,如果说用了其它第三方的东西,那么还是得自己独立去补齐环境的,如下所示音视频开发的MDK组件依然提示找不到。