欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

OSG 3.4.0 + VS 2013 超详细配置

程序员文章站 2022-07-09 15:28:21
...

说明


  • 我也是第一次配置,边配置,边截图,边写博客,嘿嘿
  • 其实这玩意编译没什么意思,就是熟悉一下CMAKE的使用及第三方库的配置
  • 所以博主直接将编译好的目录及 VS 配置的 .props 分享出来,拿去直接用

链接一:BaiduYun,提取码:ka7t

链接二:Github(只提供属性表下载)

  • 其实配置过程中还是遇到一些问题的,不过均已解决,请阅读下文
  • 虽然本文写的是 OSG 3.4.0 ,但是其它版本的配置和这个也是大同小异,有一定的借鉴意义
  • 请持续关注我的后续文章,一起学习,一起进步 …

1. 下载


1.1 进入官网的 Downloads

1.2 先下载源代码

源代码不分 x86 还是 x64

OSG 3.4.0 + VS 2013 超详细配置OSG 3.4.0 + VS 2013 超详细配置

OSG 3.4.0 + VS 2013 超详细配置

OSG 3.4.0 + VS 2013 超详细配置

1.3 再下载第三方库

这个下载下来可能会包含 x86 和 x64,我们只用 x64

OSG 3.4.0 + VS 2013 超详细配置

OSG 3.4.0 + VS 2013 超详细配置

1.4 最后下载 Data

数据不分 x86 还是 x64,这里的数据是指官方 Demo

OSG 3.4.0 + VS 2013 超详细配置

OSG 3.4.0 + VS 2013 超详细配置

经我编译发现,官网的 源代码 和 第三方库 在编译时候会出现一些很奇葩的错误,所以我后来改用别人提供的文件进行下载,链接见文章开始(Data 还是下载官网的)

或者从该博主这里下载:OSG VS2013环境配置

2. CMAKE


CMAKE 不懂的请自行百度并下载,CMAKE 版本,我用的是 3.13.0 rc2

CMAKE 不用安装,下载下来在 bin 目录下有 cmake-gui.exe ,双击直接用

2.1 新建 4 个子文件夹

OSG 3.4.0 + VS 2013 超详细配置

2.2 解压至指定目录

OSG 3.4.0 + VS 2013 超详细配置

2.3 开始 CMAKE

下面图中,注意路径与文件夹的一一对应

OSG 3.4.0 + VS 2013 超详细配置

下面这幅图中,因为三方库我们选择的是 x64,所以这里要选 2013 Win64

OSG 3.4.0 + VS 2013 超详细配置

注意下面这幅图中 1、2、3 都仔细检查检查,另外需要知道的是,不小心忘记修改后,可以重新修改再 configure,下一次的 configure 会覆盖上一次 configure 的结果

OSG 3.4.0 + VS 2013 超详细配置
OSG 3.4.0 + VS 2013 超详细配置

以上过程如有失败,请仔细检查!!!

3. VS 2013 编译


3.1 打开 build 下面的工程文件

OSG 3.4.0 + VS 2013 超详细配置

这时候会有2~5分钟的项目加载时间。等项目全部初始化完毕后再进行操作!!!

3.2 先进行 ALL_BUILD 的生成

先进行 ALL_BUILD 的批生成,时间较长,CPU i7700,实测用时,19:09 开始,22:57 结束,将近 4 小时

OSG 3.4.0 + VS 2013 超详细配置

因为我们是用 x64 的VS进行编译的,所以这里只会出现 x64

OSG 3.4.0 + VS 2013 超详细配置

漫长的等待,这步只会出现 warning,不会出现 error,如果出现 error,请及时停止批生成(按 ctrl + PauseBreak 结束),然后重新检查上面步骤是否有误!!!

OSG 3.4.0 + VS 2013 超详细配置

终于完了~~~!

OSG 3.4.0 + VS 2013 超详细配置

3.3 再进行 INSTALL 的生成

进行 INSTALL 的批生成,这个就很快了,实测用时,23:05 开始,23:06 结束,没错,你没看错,就是 1 分钟

OSG 3.4.0 + VS 2013 超详细配置

OSG 3.4.0 + VS 2013 超详细配置
OSG 3.4.0 + VS 2013 超详细配置
OSG 3.4.0 + VS 2013 超详细配置

剩下的明天再写~~~

4. 环境配置


分为 Debug 和 Release 环境配置!!!不管是 Debug 环境配置还是 Release 环境配置,两者都有相同操作!!!所以先配置相同操作!!!

4.1 共有操作

4.1.1 整理文件夹

OSG 3.4.0 + VS 2013 超详细配置

看了几篇博客,我感觉他们在这部分写的不太对,主要表现在 include 这个文件夹,编译后 build 的 include 文件夹内有三个子文件夹,可是都是空的,不知道你的是不是,反正我的是,然后我看源码中的 include 文件夹里面才是正确的头文件,所以我用的源码中的 include 文件夹!!!

lib 文件夹和 bin 文件夹中,以 .pdb 、.ilk 和 .exp 结尾的都是些多余的东东,自行手动删除,不删除也可以,我提供的下载链接中已经删除!!!!

4.1.2 新建系统变量的 OSG_FILE_PATH
  • OSG_FILE_PATH
  • D:\OSG\data

OSG 3.4.0 + VS 2013 超详细配置

4.1.3 新建系统变量的 Path 变量
  • D:\OSG\bin

OSG 3.4.0 + VS 2013 超详细配置

这步完成后最好重启电脑,因为 Windows 并不会立马对上述配置生效!!!

4.2 分开操作

  • 此时新建一个 win32 控制台工程,这个我就不废话了

不管是 Debug 环境配置还是 Release 环境配置,都建议采用在属性管理器新建属性表的方式来创建!方便导出到本地以后直接使用!

4.2.1 Debug 配置

和以前的配置三方库一样,还是VC++目录 - 包含目录、VC++目录 - 库目录、链接器 - 附加依赖项,直接贴出来,方便复制

VC++目录 - 包含目录

D:\OSG\include

VC++目录 - 库目录

D:\OSG\lib

链接器 - 附加依赖项

OpenThreadsd.lib
osgAnimationd.lib
osgd.lib
osgDBd.lib
osgFXd.lib
osgGAd.lib
osgManipulatord.lib
osgParticled.lib
osgPresentationd.lib
osgQtd.lib
osgShadowd.lib
osgSimd.lib
osgTerraind.lib
osgTextd.lib
osgUId.lib
osgUtild.lib
osgViewerd.lib
osgVolumed.lib
osgWidgetd.lib
4.2.2 Release 配置

release 和 debug 只是在附加依赖项有区别(debug 的后面都有一个 d,而 release 没有),前两者一样

链接器 - 附加依赖项

OpenThreads.lib
osg.lib
osgAnimation.lib
osgDB.lib
osgFX.lib
osgGA.lib
osgManipulator.lib
osgParticle.lib
osgPresentation.lib
osgQt.lib
osgShadow.lib
osgSim.lib
osgTerrain.lib
osgText.lib
osgUI.lib
osgUtil.lib
osgViewer.lib
osgVolume.lib
osgWidget.lib
4.2.3 属性表导出

在该项目下即可以找该到属性表

5. 测试


5.1 写代码

#include <osgViewer/Viewer>
#include <osgDB/ReadFile>

int main(int argc, char **argv){

	osgViewer::Viewer viewer;
	viewer.setSceneData(osgDB::readNodeFile("cow.osg"));

	return viewer.run();
}

5.2 运行看效果

成功的话,全屏显示一头牛

OSG 3.4.0 + VS 2013 超详细配置

其实经典的图应该是滑翔机(请自行了解 OSG 的发源),见图

OSG 3.4.0 + VS 2013 超详细配置

退出按 ESC 。想要不全屏显示???请看我的系列文章 ------ 《OSG 之学习一:OSG 基础》

OSG 之学习一:OSG 基础

不成功的话,比如说出现以下情况 …

OSG 3.4.0 + VS 2013 超详细配置

那么就需要重启电脑!!!!!!!!!!其它情况以后补充!!!

6. 编译时可能出现的错误


  • 错误一:与目标计算机 x64 冲突

CMAKE 时候是否正确选择编译器(x64 选择 Win64;x86 直接选 2013,后面什么也不加)

  • 错误二:缺少 XXX.lib

OSG 3.4.0 + VS 2013 超详细配置

这个应该是和源码有关,发现这个问题后,我就用了这位博主的安装包,然后就成功了

该博主博客链接直接:OSG VS2013环境配置

  • 错误三:CMAKE 失败

清仔细阅读 CMAKE 部分

  • 错误四:缺少 unistd.h

这个应该也是和源码有关

  • 错误五:以后补充…

以后补充…

7. 运行时可能出现的错误


  • 这个就看人品了吧,哈哈哈~~~有问题请及时留言,我予以解决

参考博客


  1. OSG VS2013环境配置
  2. OSG学习:WIN10系统下OSG+VS2017编译及运行
  3. windows环境下unistd.h缺失解决方法

请继续关注我的后续文章,一起学习,一起进步 …