OpenSceneGraph2.4.0于4月25号发布,目前还没有Win32的可执行安装包。参照虚拟岛的bluebird同学OSG2.3.7的编译过程我对OSG2.4.0进行了编辑,整个过程还算顺利,这里简单记录一下:
1、OSG2.4.0源代码的准备,可以直接从网站下载源码压缩包,也可以通过SVN取得(SVN签收 : svn co http://www.openscenegraph.org/svn/osg/OpenSceneGraph/tags/OpenSceneGraph-2.4.0 OpenSceneGraph ),放到d:/osg/OpenSceneGraph。
2、第三方库代码的准备,我是直接从SVN签收的(https://osgtoy.svn.sourceforge.net/svnroot/osgtoy/3rdParty/branches/3rdParty_win32binaries_vs80sp1/),放到d:/osg/3rdparty (注意,这里不能放错,否则在CMake里很多路径不能自动识别出来)
3、安装CMake2.6,可以从这里下载最新版本http://www.cmake.org/HTML/Download.html
4、运行CMake,进行配置,详细见图
注意:开始要选择编译环境,我这里是VS2005 VC8
点击“OK”,会在D:/Projects/OSG目录下生成VS2005的解决方案文件OpenSceneGraph.sln,打开解决方案,先把osgversion.cpp中的?改掉。变为双引号(")即可。
然后还有个问题我在bluebird的编译文章里没看到过这个问题,这里提一下,在链接器里设置相关库文件的时候类似于“../../lib/OpenThreads”这样的地方都要改掉改为“OpenThreads.lib”即可,否则编译的时候会有“LNK1181: 无法打开输入文件“../../lib/OpenThreads.obj””的编译错误
改以前
修改以后
整个解决方案总共72个项目,绝大多数都有这个问题,不知道是不是我CMake设置的问题,我是一个一个手动改的,不知道有没有其他捷径,知道的请告知~
像上面这样修改以后就能够顺利通过编译了。