1: 解决QT 程序异常结束,如果你是使用了第三方库GDAL or OPENCV
1.1 错误解释
可能会给你提供一种思路,因为这个错误,浪费了我不少的时间,网上找的各种解决方法都对我们的项目无效,由此我记录下我的解决方法吧。放上错误原图:
首先说下原因吧,由于我们的项目用到了 GDAL,IDE使用的是QT(mingw),这就需要自己用mingw重新编译GDAL了。编译好之后的GDAL在导入项目之后,重构项目,一运行就出现这种错误,(先说好我的库路径是完全没有问题,库是导入成功且能识别的),这时我就怀疑是由于我使用了msys2(mingw 64)编译的GDAL ,在使用编译好之后的GDAL需要依赖一些dll文件,所以我就查看了*debug*下的exe文件,运行它果然提示缺失dll文件。
ps:我同时使用了GDAL(MINGW)32 和GDAL(MINGW)64 构建的程序,提示缺失的文件如下
1.2 解决方法
(如果你使用了msys2(mingw 64)编译的GDAL)
ps:msys2(mingw 32)编译的GDAL解决方法和这个一样 ,QT中导入GDAL路径方法 QT(MINGW)配置GDAL
--------------前提你电脑安装了QT和Msys2-----------------------
-------------(如何安装参考 软件安装 部分)--------------------
(1) 将你的msys2 下的mingw64\bin 添加到path环境变量
同时QT的两个mingw bin也添加到path环境变量
(2) 将程序缺失的dll文件进行补充: D:\msys64\mingw64\bin 下的这几个dll 复制到
D:\Qt5.12.2\Tools\mingw730_64\bin 里面
(3) 重启电脑 使环境变量生效
(4) 打开QT 重构项目 完美运行 不再报错