OSG3.2+Qt5.2.1+VS2012+OSGEarth 2.5编译问题记录

问题1:CMake Error at D:/Qt/Qt5.2.1/5.2.1/msvc2012_64_opengl/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:16
(message):
Failed to find "glu32" in "" with CMAKE_CXX_LIBRARY_ARCHITECTURE "".

两种方式:
1.cmakelist
我的这个文件在C:/ProgramFiles/Microsoft SDKs/Windows/v7.0A/Lib/x64中,可以用VS2010打开CMakelists.txt(
用记事本打开会去掉代码排版格式),加入一行代码(注意路径中是 / 而不是 ): SET(CMAKE_PREFIX_PATH
"C:/Program Files/MicrosoftSDKs/Windows/v7.0A/Lib/x64")(笔者采用的是该方法),也有可能在D:/Program Files(x86)...

2.其他下面的qtguiconfigExtras.cmake

win8:
set(CMAKE_LIBRARY_PATH "C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x64")
in Qt5GuiConfigExtras.cmake

只能绕道而行,把_qt5gui_find_extra_libs(OPENGL "glu32;opengl32;gdi32;user32" "" "")给注释掉了。

自己添加对glu32;opengl32的引用。

如果还有gdi32错误,从Qt5GuiConfigExtras.cmake把_qt5gui_find_extra_libs(OPENGL
"glu32;opengl32;gdi32;user32" "" "")修改为_qt5gui_find_extra_libs(OPENGL "glu32;opengl32" "" "")

Qt版本更新但是cmake不能主动修改问题:
直接修改cmakechche.txt里面qt相关的路径,批量替换

osgearth2.5编译问题:

1.nvcore/nvcore.h: No such file or directory,memory.h错误找不到nvcore/nvcore.h,把编译osg所用第三方库的
memory.h删除

2.QT_INSTALL_LIBS as "D:/Qt/Qt5.2.1/5.2.1/msvc2012_64_opengl/lib" but QtCore could not be found ther

这个是因为添加qt5库支持,可以添加qt5支持。从osgearth的cmakelist文件找到相关支持的文本,粘贴过来

原文地址:https://www.cnblogs.com/yanhuiw/p/3788811.html