想学习下osgearth在qt下的开发,于是尝试编译一下,貌似成功了,可是写了个小程序运行提示:QWidget: Must construct a QApplication before a QWidget。google一下,大家说得最多的是release和debug库混乱了。按照网上的方法修改pro文件如下也无效:
CONFIG(debug,debug|release) {
unix|win32: LIBS += -lQt5Cored
unix|win32: LIBS += -lQt5Guid
unix|win32: LIBS += -lQt5Networkd
unix|win32: LIBS += -lQt5OpenGLd
} else {
unix|win32: LIBS += -lQt5Core
unix|win32: LIBS += -lQt5Gui
unix|win32: LIBS += -lQt5Network
unix|win32: LIBS += -lQt5OpenGL
}
编译环境是:Windows 8.1,QT5.2,MingW32 4.8。
下面两个方案,一是重新编译相关库,release 和 Debug 分别编译,并记录相关编译过程,将编译结果进行分享。另外继续查找相关资料,利用现有库解决问题。
如果重新编译一遍,需要编译以下库:
osg 3.2
osgearth 2.5
zlib 1.2.8
curl 7.36.0
gdal 1.10.1
可能的话,把以下库也一并编译
geos
minizip
v8
sqlite3