1、下载OSG源码OpenSceneGraph-3.2.0(对官方的进行了修正)
2、下载OSG第三方库 下载freeglut库,所有dll/.h/.lib覆盖
3、下载OSG数据
4、下载CMake并安装
6、编译
选择一个盘(如E),新建一个目录(OSG)。把上述压缩包解压到OSG里。
还有安装CMake程序(如果是ZIP格式,解压)
三、接下来用CMake生成VS2010的工程
1) 在E:\OSG\OpenSceneGraph下建立两个文件夹,分别命名为bin、build(放置后面生成的东西)。
2) 运行CMake,将E:\OSG\OpenSceneGraph下的CMakeLists.txt拉到CMake界面里。
设置where is the source code 为C:\OSG\OpenSceneGraph
Where is build the binaries 为C:\OSG\OpenSceneGraph\build
3).点下configure按键,选择VS 10 2010 64(可能会出现警告,可以忽视)
这里应为64位
3).设置相关的cache value参数,这里主要设置的参数包括:
ACTUAL_3RDPARTY_DIR:设置为前面的E:\OSG\3rdParty
BUILD_OSG_EXAMPLES :ON,即编译实例
CMAKE_INSTALL_PREFIX:E:/OSG/OpenSceneGraph/bin,设置编译成功后,相关的库文件存放的地址,.
然后点击Configure按钮,然后将Advanced打勾,将BUILD_MFC_ EXAMPLE设置为on,然后进行最后一次的Configure配置。
f)点击Generate,自此建构完成。
四.编译阶段
a) 用VS2010打开OpenSceneGraph.sln(此文件在D:\OSG\OpenSceneGraph\build下),
选择解决方案,右键选择批生成,选择ALL_BUILD和INSTALL的Debug和Release进行编译。
(菜单项没有是“生成-批生成”,但可以在“生成-配置管理器分别进行设置,选择(Debug和Release两个版本),这段编译时间是很长的,估计4-5个小时。)
Debug没问题
Release下发现osgviewer.exe等程序不能正常启动
array说是DLL hell,有人说CRT版本库不一样
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
如何添加freeglut库
下载freeglut开源文件,http://sourceforge.net/projects/freeglut/?source=typ_redirect
解压,打开
XXX\freeglut-2.8.1\freeglut-2.8.1\VisualStudio\2010
下freeglut.sln,生成,批处理,Debug和Release分别生成。
编译成功后退回到 freeglut-2.8.1根目录, 把include\GL里面所有的.h文件复制到D:\Microsoft Visual Studio 10.0\VC\include文件夹,需要创建GL文件夹
退回到 freeglut-2.8.1根目录, 把lib\x86里面的freeglut.dll复制到C:\Windows\System32文件夹里,把freeglut.lib复制到D:\Microsoft Visual Studio 10.0\VC\lib里
到此freeglut的配置就完成了。
-----------------------------------------------
1、生成时提示找不到osg/config和OpenThreads/config头文件,需要从相应目录复制到这两个目录下。
2、如果提示找不到——函数,是没有链接到相应库,需要在链接器