vs2017+osg3.41+win10详细教程,安装过程中出现好多的error都解决掉了

Openscenegraph的安装:

我的版本为vs2017+osg3.41+win10

主要参考https://blog.csdn.net/wangbingqian_110/article/details/78069061

http://bbs.osgchina.org/forum.php?mod=viewthread&tid=9223&highlight=osg%2Bvs2010&_dsign=253e9edb

 

库的话在这下载,附件里也有

库文件最好连接外网,然后通过osg国外官方网站下载这些库文件

https://download.csdn.net/download/qq_41471281/12049509

二、编译准备
为了编译的顺利进行,将下载的文件组织如下:
在D盘建立一个OSG的文件夹,然后其他文件如下放置:
D:\OSG\OpenSceneGraph:源码解压后放于此
D:\OSG\3rdParty:第三方依赖库解压后放于此
D:\OSG\data:数据包解压后放于此。

三、安装源码
1、安装CMake之后,打开CMake -gui.exe。
2、按下图所示,填写源码路径与结果路径。

3、点击Configure,进行设置,我的是vs2017,所以选择vs2017,  x64   然后点击Finish。

4、接下来进行一些配置,主要有三个,在红色表格中找到ACTUAL_3RDPARTY_DIR,将其值设置为D:/OSG/3rdParty/x64、最后一定要到三方库的bin,include这个界面才可以,不用过多的配置

BUILD_OSG_EXAMPLES,值设置为ON、CMAKE_INSTALL_PREFIX,值为第一步中的结果路径。如下:

然后再次点击configure
5、点击Generate,自此建构完成。
四、编译
1、在第三步的结果路径中,找到OpenSceneGraph.sln,将其用VS2017打开(或者直接cmake的open projiect)。
选择生成、批生成,

对All_BUILD进行生成,选择(Debug和Release两个版本),这段编译时间很长,大概 4-5个小时。如果前面步骤没有错误的话,这一步不会报错,只有警告。设置详情如下图所示:

下面是我构建过程中的错误:

Osg安装过程中出现的错误:

OSG C2059语法错误常数,#undef RELATLVE 我是用#undef取消宏定义

 

Error

 

Error:

后来发现,还是我们在这个文件中定义的结构体,和winuser.h中定义的宏重复了,所以在这个代码中找到MessageBox,然后#undef MessageBox

 

Error

解决在工程属性->C/C++->预处理器->预处理器定义中 加入 WIN32_LEAN_AND_MEAN即可

 

这个在  语法错误“字符串”line2159   我把tagDATADIR这个结构体给注释了   

后在用vs2017的批生成的过程中,如果中途编译出现错误,最好直接解决掉,不然可能会影响下一步的编译。 所有出现的错误,都要上网找,然后尽量解决。我出现的错误大部分都是宏定义冲突的问题,大部分用#udef解决

如果遇到实在不能解决的,那就把那个项目卸载掉好了。但是只能卸载插件plugins的项目。我就卸载了三个

 

2、第1步完成后,再对INSTALL也进行相应生成编译。这段时间相应会短一点。如图:

如果没有错误注意:

按照这个创建个OSG文件夹,但是我INSTALL出错了,所以我是自己建的

 

 

 

 

 

ERROR 我在INSTALL时出错了,(setlocal的什么错误)然后参考http://www.osgchina.org/show.php?id=42博客里

手工创建,创建后如下:

 

五、环境变量
以上步骤进行完成后,对系统变量作如下设置:
1、添加系统变量:OSG_FILE_PATH,变量值为D:\OSG\data(与第二步中所建目录相对应)。
2、在PATH变量中添加:第三步结果目录中的bin目录。(我的install是手工创建的,所以bin目录为  
配置完成后,可在命令行输入osgversion或osglogo进行测试。
注意:运行osglogo会出错大概就是ziblib没找到,只需要把上述提到的三方库中的同名的库复制到生成的bin目录下

复制到

然后就可以了。其余的按照开头提到的帖子,创建新项目就可以了。

需要注意的是:我们在vs项目中vc++和连接这个几个, #include和lib都是我们生成的文件,即cmake_prefix的文件下的bin目录中生成的,这样才有用

 

最后,用vc++使用的话,按照上述帖子中讲的,包含目录、库目录、附加依赖项配置好就可以了

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值