解决Qt 打包的软件缺少dll问题
1.场景分析
系统:windows11
IED版本:Visual Studio 2017
Qt 版本:Qt 5.12.12
很多开发人员在使用 Qt 自带的 Windeployqt 打包完程序后,将运行包放到其他PC端时发现无法正常运行,报错内容为缺少 .dll 库。如下图所示:
出现这种错误的原因大家都知道,是因为缺少对应的依赖库的导致程序无法正常运行。原来的方法是人工在系统中查找,这种方法费时费力,而且无法保证查找的库是否正确。
2.原因分析及措施
要分析原因,首先我们知道 Qt 在 Windows 中运行需要两个类型的库,一种是该软件在 Windows 系统运行的依赖库(Visual Studio来提供);第二种是 Qt 的依赖库。在打包的时候,需要配置当前的 Visual Studio 环境和 Qt 打包环境 两套环境。那当报错时如何区分呢?如果缺失的是 Qtxxx.dll 库,那就是属于第二种 Qt 依赖库缺失,其他的属于第一种。
缺失 Qt 依赖库: