1、FlightGear簡介html
FlightGear 始於1997年,是一個開源的多平臺飛行模擬器。redis
2、FlightGear編譯過程express
FlightGear平臺的說明文檔見:http://wiki.flightgear.org/Main_Pagewindows
FlightGear支持在多平臺上運行,用戶能夠從源碼開始編譯本身的FlightGear,編譯方法也有不少種。工具
這裏咱們主要在Windows平臺上運行,所以這裏選用Building using CMake - Windows方式進行編譯。,官方流程見:http://wiki.flightgear.org/Building_using_CMake_-_Windowsui
一、首先須要準備主要相關文件spa
1)源代碼(下載頁http://www.flightgear.org/download/source-code/)debug
我使用的版本:FlightGear-2016.1.1.tar.bz23d
SimGear-2016.1.1.tar.bz2調試
FlightGear-2016.1.1-data.tar.bz2
2)工具軟件
二、建立目錄
32系統版本需建立目錄以下(相比於官網,加上虛線更容易看清目錄結構)
三、編譯過程
1)編譯simgear
已是第二次打開了,因此沒有第一次打開Cmake 點擊config,選擇編譯器: Visual Studio 10(個人是第二次打開,因此再點config看不到那個界面了,下面盜了個圖,此圖來自自由雲https://www.freeyun.com/flightgear-3-2-0-generation-debug.html)
而後,主界面:
CMAKE_BUILD_Type 根據須要添加,我後來加的是」Debug;Release「,兩個版本都要。
Where is the source code 設置爲 D:\MSVC_3RDPARTY_ROOT\simgear-2016.1.1
Where to build the binaries 設置爲D:\MSVC_3RDPARTY_ROOT\simgear-build
CMAKE_INSTALL_PREFIX 設置爲 D:\MSVC_3RDPARTY_ROOT\Install\msvc100\SimGear
點擊 Configure 直至 Generate 可用,點擊 Generate 生成工程文件
這個過程當中,若是Cmake中有提示xxx-notfound,記得手動配置一下,若是錯誤產生看是什麼錯誤,通常狀況下是沒有找到相應的依賴庫,若是沒有下載,就本身去下,若是已經下載,可是沒找到就手動幫忙重置一下,簡單粗暴。必定記得查看錯誤緣由,要有耐心慢慢捋。最後,編譯成功,打開位於 D:\MSVC_3RDPARTY_ROOT\simgear-build 的工程文件 SimGear.sln 。
選擇批生成,勾選ALL_BUILD和INSTALL 兩項(這裏我在Cmake那頁裏後來加上了Debug;Release ,因此有兩個版本)
點擊生成,等待編譯成功。
2)編譯FlightGear
一樣的,編譯FlightGear和Simgear的流程差很少,只是把對應的目錄換成FlightGear的相關目錄,這其中涉及到的內容就比較多。
Where is the source code 設置爲 D:\MSVC_3RDPARTY_ROOT\flightgear-2016.1.1
Where to build the binaries 設置爲 D:\MSVC_3RDPARTY_ROOT\flightgear-build
CMAKE_INSTALL_PREFIX 設置爲 D:\MSVC_3RDPARTY_ROOT\Install\msvc100\FlightGear
點擊 Configure 直至 Generate 可用,點擊 Generate 生成工程文件
用 VS 打開 D:\MSVC_3RDPARTY_ROOT\flightgear-build下的工程文件 FlightGear.sln
以上是基本流程,其中可能遇到的問題有BZIP2_INCLUDE_DIR等BZIP2的目錄找不到,本身能夠到 官網上下載一個,而後放到3rdParty 中 D:\MSVC_3RDPARTY_ROOT\3rdParty\bzip2-1.0.6 。
還有就是Qt5 ,建議5.5以上,相關目錄以下
C:/Qt/Qt5.5.1/5.5/msvc2010/lib/cmake/Qt5Core
C:/Qt/Qt5.5.1/5.5/msvc2010/lib/cmake/Qt5Gui
C:/Qt/Qt5.5.1/5.5/msvc2010/lib/cmake/Qt5Widgets
C:/Qt/Qt5.5.1/5.5/msvc2010/lib/cmake/Qt5
其中,目錄設置出錯的話,會有詳細提示,照着作就行了。
上傳一下完整的配置。
以後,一樣是Generate,而後打開flightgear.sln文件,對ALL_BUILD項目,選擇批量編譯。
而後配置環境變量
Path中添加 D:\MSVC_3RDPARTY_ROOT\Install\msvc100\OpenSceneGraph\bin; D:\MSVC_3RDPARTY_ROOT\3rdParty\bin。
設置新的系統變量 FG_HOME
變量值爲 D:\MSVC_3RDPARTY_ROOT\Install\msvc100\FlightGear
繼續打開 FlightGear.sln 工程,將 fgfs 設置爲啓動項
打開 fgfs 的工程屬性,配置屬性-調試-命令參數,添加--fg-root=D:\MSVC_3RDPARTY_ROOT\FlightGear-2016.1.1-data
而後啓動調試便可
參考
http://www.flightgear.org.cn/thread-7997-1-1.html
https://www.freeyun.com/flightgear-3-2-0-generation-debug.html
http://www.flightgear.org.cn/thread-7997-1-1.html
https://www.freeyun.com/flightgear-3-2-0-generation-debug.html