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、如果提示找不到——函數,是沒有鏈接到相應庫,需要在鏈接器