配置前的注意事項
今天我們來介紹OGRE的環(huán)境配置及其詳細(xì)安裝過程第喳。本文作者使用的是OGRE 1.10 + Visual Studio Community 2017 + Win10(內(nèi)存8G,部分人在編譯OGRE時可能會遇到內(nèi)存溢出的問題间景,解決方法在這里)。這里要注意的是荡含,OGRE的下載頁面往往會提供一些已經(jīng)編譯好的sdk文件厨诸,但一般對應(yīng)的VS版本都較低,靈活性不好利花,因此,在官網(wǎng)的Download頁面也推薦讀者利用源碼進(jìn)行編譯安裝载佳,因此炒事,讀者不需要另外安裝其他版本的VS,直接用自己電腦上已安裝的版本即可蔫慧。另外挠乳,若進(jìn)行源碼編譯安裝,則建議直接下載最新版本的OGRE藕漱。這里引用官網(wǎng)中的原話:
We recommend you to build Ogre from source to make it match your needs (debug/ release, C++11 options etc.). The “install” target will generate you the SDK that you can then use for your project.
另一個非常重要的工具就是CMake欲侮,其在對dependencies源碼和OGRE源碼的編譯中都會用到,后面部分將會詳細(xì)敘述肋联。
OGRE的環(huán)境配置較為復(fù)雜,依賴于很多第三方圖像庫刁俭,因此橄仍,在安裝OGRE之前,首先要對OGRE依賴的環(huán)境進(jìn)行正確配置牍戚。本文的教程是根據(jù)作者自身的配置經(jīng)歷整理出來的侮繁,OGRE的官網(wǎng)上也對環(huán)境的配置及其安裝做出了詳細(xì)的指導(dǎo):
- http://www.ogre3d.org/tikiwiki/tiki-index.php?page=Prerequisites
- http://www.ogre3d.org/tikiwiki/tiki-index.php?page=CMake+Quick+Start+Guide
但是在實際的編譯過程中仍然會遇到一些問題,下面將對具體的配置安裝步驟進(jìn)行詳細(xì)的敘述如孝。
環(huán)境配置
安裝CMake并下載OGRE源碼
安裝編譯器
本文作者使用的是免費(fèi)的Visual Studio Community 2017锁孟,安裝建議,按需安裝茁瘦,如果只是進(jìn)行C++工程的開發(fā)品抽,建議安裝一個基本的C++即可,大概5G左右甜熔,且安裝速度很快圆恤,不得不說是VS 2017的亮點(diǎn)所在。
Boost配置(可選)
Boost is not required to build Ogre - it's optional.
The Boost Threads library is used by the paging component, which in turn is used by the terrain component, enabling background loading and thus faster response times.
OGRE的build不需要Boost庫腔稀,但在實際使用中盆昙,頁面組件需要Boost庫羽历,用于背景加載,并縮小響應(yīng)時間淡喜。
Boost的配置很簡單秕磷,首先從官網(wǎng)中下載最新版的Boost源碼本文使用的版本是1.66.0。具體可參照以下兩篇博客:
DirectX
這里需要注意的是:
- 對于1.x版本的OGRE的正確build拆火,一定要安裝DirectX 9 SDK (DX SDK June 2010)
- 在安裝過程中跳夭,很有可能會碰到error code S1023的錯誤而導(dǎo)致DirectX安裝錯誤,這是因為你的系統(tǒng)在安裝June 2010 DirectX 9 SDK之前已經(jīng)安裝了更高版本的 Visual C++ 2010 Redistributable Package们镜,你需要先卸載這個更高版本的Visual C++ 2010 Redistributable Package币叹,再安裝June 2010 DirectX 9 SDK,然后再安裝Visual C++ 2010 Redistributable Package模狭,祥見https://support.microsoft.com/en-us/kb/2728613
Dependencies
OGRE dependencies的源碼可從此處獲得 here at Bitbucket颈抚,下載時注意不要直接下載源碼的壓縮包,因為會因為遺漏SDL 2中的子庫而導(dǎo)致對dependencies進(jìn)行cmake時出現(xiàn)以下的錯誤:
解決方法是:
SDL2 is now a mercurial subrepository of the ogredeps repository. Using a zip download may not include subrepositories, so try using a hg clone instead.
因此需要先1.安裝類似于SVN的版本控制軟件Mercurial(TortoiseHg)
2.新建根目錄文件夾(如deps)嚼鹉,打開空文件夾deps贩汉,并在deps中右鍵》TortoiseHg》Clone,在源中填入ogredeps/Source頁面的網(wǎng)址锚赤,點(diǎn)擊克隆匹舞。
這個過程會花費(fèi)一定時間,請耐心等待线脚。
3.打開CMake赐稽,在source code中填入deps的根目錄位置(作者電腦上的是D:/deps),然后自己新建一個文件夾用于存放編譯好的二進(jìn)制文件浑侥。先點(diǎn)擊Configure姊舵,本文中在配置中選擇Visual Studio 15 2017,其他默認(rèn)值寓落。再點(diǎn)擊兩次Generate括丁,然后打開工程,先生成‘BUILD_ALL’伶选,再生成‘INSTALL’史飞,最后將新生成的‘ogredeps’文件夾拷貝到OGRE工程文件夾中,用于后續(xù)對OGRE的編譯考蕾。具體參考https://bitbucket.org/cabalistic/ogredeps/src中的說明祸憋。
OGRE的building
1.下載OGRE源碼至D:/ogre-master
2.打開CMake。
3."source code=D:/ogre-master","Where to build the binaries=D:/ogre-master/ogredeps"肖卧。
4.點(diǎn)擊Configure蚯窥。
5.點(diǎn)擊Generate
6.在VS中打開工程,先對整個工程生成解決方案(Debug和Release),再對
......其實官網(wǎng)中已經(jīng)說得很清楚了拦赠,偷個懶巍沙。