最近由于项目的需求需要用QT+GDAL写一套二维的针对遥感影像和矢量数据的平台,整个平台的架构以可动态加载和卸载的插件形式。对于QT和GDAL本人都是小白从来没有碰过,在开发的过程中遇到了比较多的坑 。本项目开发使用的是VS2013,QT5.8.0,在编写插件时,遇到了Q_INTERFACES提示Undefined interface。在网上百度了,目前给出的解决方法有以下两个:
(1)https://blog.youkuaiyun.com/sinat_18811413/article/details/105675049 但是本人VS2013在装QT5.8.0之后属性页面并未出现Qt meta_object complier这一项,下图为解决方案博主提供的解决方法的截图
(2)另外一种解决方法,提出该问题的链接为:https://bugreports.qt.io/browse/QTBUG-59460, 其解决方法的链接为:https://codereview.qt-project.org/c/qt/qtbase/+/184321
由于本人没有第一种解决方法的那一项,因此采用了第二种方法加上宏定义 --compiler-flavor=msvc。原文链接是qt下面的解决方法,在VS中的解决方法如下,在工程中右键当前.h文件然后属性,如下图所示位置加入宏定义