第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 如何在vs编译c语言程序 如何在使用WIN10 Visual Studio 编译FlightGear

如何在vs编译c语言程序 如何在使用WIN10 Visual Studio 编译FlightGear

时间:2024-04-26 23:11:19

相关推荐

如何在vs编译c语言程序 如何在使用WIN10 Visual Studio  编译FlightGear

1 目录准备

window 10 系统

VS 下载 Visual Studio 企业版也是可以的 官方要求最低 Express 版本。(我安装的是 VS企业版本,关于C++WINDOW SDK都全部装上了)

其他下载按照1.1给的脸颊下载。

1.1 按照官方建议目录来

目前基本都是64bit系统,其中需要下载的

3rdParty.x64 /

OpenSceneGraph / ( OSG CMake install )

Boost / (latest version can be downloaded from /) 下载最新版本

64-bits 目录结构

3rdParty.x64 /

bin /

include /

lib /

Boost / (latest version can be downloaded from [/](/ "/"))

boost /

lib64 /

install /

msvc140-64 / ( for VS 64-bits, or msvc100-64 for VS 64-bits, or msvc90-64 for VS 64-bits )

OpenSceneGraph / ( OSG CMake install )

bin /

include /

lib /

SimGear / (create this empty for now, subfolders will be created by build process 只是空目录后面会自动生成文件过来)

include /

lib /

FlightGear / (create this empty for now 只是空目录后面会自动生成文件过来)

include /

lib /

1.2 实际目录如下图

${MSVC_3RDPARTY_ROOT} 表示根目录,比如我的叫 FLIGHTGEAR_ROOT_X64 放在了D盘根目录。

1.3 下载 flightgear源码

下载源码,包括3个部分

simgear

flightgear

flight-data

我下的是.1.1 提交的版本,应该是目前最新的release版本代码。在哪里下?

官方入口: /FlightGear_Git 进入找到最新的release版本,这里不建议编译老版本,老版本意味着失去了最新的支持。

1.4 拷贝到1.1构件的目录

把源码拷贝过来,如下图,并增加文件夹 flightgear-.1.1-build、simgear-.1.1-build 空文件夹,作为源码编译后生成代码存放的文件夹。

如下图,

flightgear-.1.1 下载的源码

flightgear-.1.1-build 空文件夹,用于cmake ui 生成 visual studio 工程文件。

simgear-.1.1-build 下载的源码

simgear-.1.1-build 空文件夹,用于cmake ui 生成 visual studio 工程文件。

2. CMake 编译

2.1 设置编译源码目录

首先你要下载CMake,打开CMake 如下图,设置 simgear的源码和编译后的文件存放目录

2.2 点击【Configure】

弹出框设置,点击【 Finish】

注意,一定要安装 Visual Studio 高版本的不支持、一定要安装 Visual Studio 高版本的不支持、一定要安装 Visual Studio 高版本的不支持。官方提到vs-的版本都是支持的。

2.3 错误处理一般是 boost目录没有设置

设置 Boost目录

继续点击 【Configure】

2.4 错误处理设置工程输出目录 CMAKE_INSTALL_PREFIX

CMAKE_INSTALL_PREFIX 是 VS工程输出目录。

如果还有错误,一般就是NOT FIND 错误,记住,C++的错误大多数是某某路径设置不正确。如下图本次设置

继续点击 【Configure】

2.5 生成 Generate

如果编译结果遇到 Warning 不要理会,还是点击 Generate 按钮进行VS工程代码生成。

如果成功,那么显示

可以 Open Project 对 Simgear 源码编译。

3 编译 Simgear 源码

注意必须先编译 Simgear 源码,之后才能进行 FlightGear 源码的生成与编译

3.1 编译 解决方案

打开VS可见

有61个工程。等等VS加载项目完毕

选 Release 便右键工程解决方案,点击【生成解决方案】,要一定时间根据个人电脑配置。

如上图,如果出现了类似的提示,恭喜你编译成功

3.2 编译Install 工程项目,生成到指定目录

这里生成的目录就是 CMAKE_INSTALL_PREFIX 设置的目录

出现错误了

这个错误不知道如何解决,直接去掉这个文件,看上去缺少 header文件,因为是test项目,直接从 工程中去掉。

生成成功 查看我们的目录

4.CMake 编译FlightGear源码

cmake编译 flightgear 源码工作是跟 gear一样的,中间多出一个 simgear目录设置。

4.1 设置FlightGear路径,并点击 Configure

弹出设置框设置

你应该注意到 这个步骤跟Simgear是一样的

4.2 设置 Boost目录

你的CMake一定会报错,如下:

因为我们参数 BOOST_INCLUDE_DIR 没有正确设置,

这个步骤我们一次设置两个参数

BOOST_INCLUDE_DIR

CMAKE_INSTALL_PRFIX

你应该注意到 这个步骤跟Simgear是一样的

4.3 设置错误SimGear_DIR 设置

这里的 SimGear_DIR 就是跟前面生成的不同之处。

如下 Could not find a package configuration file provided by "SimGear"

(requested version .1.0) with any of the following names:Could not find a package configuration file provided by "SimGear"

(requested version .1.0) with any of the following names:

这个问题我折腾半天,其实没有细看错误提示。提示说的很清楚,缺少SimGearConfig.cmake 我们应该在我们设置的目录中查询就知道了

设置 SIMGEAR_DIR

点击 Configure

4.4 生成

你可能看到还有不少报错,但是都是 Warning,你可以忽略

5 编译 Flightgear

好了以上关于Flightgear的步骤其实跟 Simgear是一样的,使用VS编译也是一样的,如下设置

选择 Release 模式 x64 点击【生成解决方案】

编译成功后选择 INSTALL工程,右键点击【生成】

安装到指定目录

6 拷贝配置Flightgear-DATA 数据

把 fliight-data 拷贝到 D:FLIGHTGEAR_ROOT_X64installmsvc140-64FlightGear 并命名位 data

7 调试 ctrl+F5

在工程项目属性中

需要在 fgfs项目属性中 调试参数

--fg-root=D:FLIGHTGEAR_ROOT_X64installmsvc140-64FlightGeardata

注意:如果调试遇到一些DLL缺少问题请看下面的解决方案。比如 osg131开通的dll

问题

最后 是一些 dll文件的问题需要把dll文件拷贝到执行目录 D:FLIGHTGEAR_ROOT_X64installmsvc140-64FlightGearin 我也不知道为什么,还不知道C++中如何处理这些。

拷贝 D:FLIGHTGEAR_ROOT_X643rdParty.x64in 所有DLL文件

拷贝 D:FLIGHTGEAR_ROOT_X64installmsvc140-64OpenSceneGraphin 所有DLL文件

拷贝 D:FLIGHTGEAR_ROOT_X64installmsvc140-64OpenSceneGraphinosgPlugins-3.4.2 整个文件夹到

以上文件拷贝到 D:FLIGHTGEAR_ROOT_X64installmsvc140-64FlightGearin 目录

如何在vs编译c语言程序 如何在使用WIN10 Visual Studio 编译FlightGear源码(.1.1版本)(示例代码)...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。