1. 依赖

OSGEarth的编译还是比较简单的,首先是要获取编译的依赖。

1) OpenSceneGraph

OSGEarth是OpenSceneGraph扩展库,编译过程可以参看我的另一篇文章:Win64下编译OSG详细过程(Win10+VS2015+OSG3.6.3)

2) GDAL

通用的用于读写空间数据的一套跨平台开源库,OSGEarth很多对于空间数据的支持就是GDAL实现的。编译过程:Win64下编译集成GEOS和Proj4的GDAL

3) CURL

网络文件传输库,跟在线地图服务相关。同时它也是OpenSceneGraph的第三方依赖库,直接拿过来用就可以了。

4) GEOS

GEOS是一个集合形状的拓扑关系操作实用库。osgEarth使用GEOS执行像缓冲和交叉这样的几何操作。虽然它是可选的依赖库,为了使用完整的矢量要素功能,建议加上这个类库。编译过程:VS2015编译GEOS的debug和release版本

5) 其他

在官方的编译帮助文档里面还提到了SQLite和QT。SQLite应该是使用某些数据库文件的时候才用到,适用范围应该较小。而现在的版本应该也不用依赖QT组件,反正我是没有看到编译参数的,需要在QT中使用osgEarth的话,可以使用osgQT。

2. 编译

1) 设置参数

打开CMake,在“Where is the source code”填写源代码目录,在“Where to build the binaries”填写工程构建目录,然后点击“Configure”,如下图所示:

注意在第一次“Configure”的时候会让你选择编译器,我这里选择的是VS2015的X64编译器。

2) 配置路径

第一次配置一般是不成功的,会提示缺少依赖库。这个时候可以把依赖的路径依次填入,重新“Configure”就可以了。我这边的填写的路径参考如下:


OSG有非常多的子类库,所以如果自己一个个填写的话非常麻烦。这里有个快速办法,首先按照如下图方式组织文件夹C,将头文件都放入到include子文件中,lib文件放入到lib子文件夹里面(debug和release都可以)。然后填写文件夹C到OSG_DIR编译项,最后再次“Configure”,就可以帮你自动识别了相关的路径了。

3) 生成编译

配置过程可以边填写边“Configure”,直到最后不再提示缺少相应的依赖库。如下图所示,提示“configuring done”(提示的警告和缺失组件不是必须)。

然后点击“Generate”,生成VS项目工程,点击“Open Project”打开项目工程。最后在VS生成解决方案,等待编译完成就可以了。

3. 参考文献

  1. Building osgEarth
  2. osgearth编译全过程

Windows下OSGEarth的编译过程的更多相关文章

  1. 手把手教你在Windows下使用MinGW编译libav(参考libx264的编入)

    转自:http://www.th7.cn/Program/cp/201407/242762.shtml 手把手教你在Windows下使用MinGW编译libav libav是在Linux下使用纯c语言 ...

  2. 【转】Windows下使用VS2008编译OpenCV 2.1 添加Intel TBB和Python支持

    Windows下使用VS2008编译OpenCV2.1 添加Intel TBB和Python支持 步骤: 1.仔细阅读OpenCV官网上的InstallGuide:http://opencv.will ...

  3. Windows下从源代码编译Skia

    在PPAPI里面画图,能够结合第三方的图形库.比方Cairo.Skia. Google Chrome.Chromium和Android都使用Skia作为画图引擎.我也来试试Skia,先过编译关. fo ...

  4. 实践详细篇-Windows下使用VS2015编译的Caffe训练mnist数据集

    上一篇记录的是学习caffe前的环境准备以及如何创建好自己需要的caffe版本.这一篇记录的是如何使用编译好的caffe做训练mnist数据集,步骤编号延用上一篇 <实践详细篇-Windows下 ...

  5. MySQL5.7.25(解压版)Windows下详细的安装过程

    大家好,我是浅墨竹染,以下是MySQL5.7.25(解压版)Windows下详细的安装过程 1.首先下载MySQL 推荐去官网上下载MySQL,如果不想找,那么下面就是: Windows32位地址:点 ...

  6. windows下用vs2010编译ffmpeg

    转载自;http://q1q2q3q4q5q6ln.blog.163.com/blog/static/500794332014666536283/ (注意:请务必先阅读:七,后记补充:) ffmpeg ...

  7. Qt5.8 在windows下mingw静态编译

    官方对编译一些条件介绍:https://doc.qt.io/qt-5/windows-requirements.html 在默认情况下,用QtCreator编译程序时,使用的是动态编译.编译好的程序在 ...

  8. Windows下使用MINGW编译ffplay

    之前考虑到需要快速配置编译ffplay,使用了比较暴力的方法,具体可以参考编译ffplay.exe简化版. 这里介绍下相对规范的做法. 前提:已经安装了Windows下GCC开发环境--MINGW+m ...

  9. Windows下VS2013 C++编译测试faster-rcnn

    [原创帖!转载请注明出处:http://www.cnblogs.com/LaplaceAkuir/p/6445189.html] 本人最近研究faster-rcnn,在ubuntu成功跑通matlab ...

随机推荐

  1. oracle 数组

    定义一个长度为5的字符串数组 type str_array is varray(5) of varchar2(30); v_str_array str_array := expr_key_array( ...

  2. javascript的回调函数 同步 异步

    后一个任务等待前一个任务结束再执行.程序执行顺序与任务排列顺序一致的,同步的. 参考: http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%B ...

  3. STL之适配器

    一,STL适配器简介 1.什么是适配器 STL提供了序列式容器,同时针对序列式容器提供了应用于不同场景的容器适配器,通俗讲适配器就是以序列式容器为底层数据结构,进一步封装了的为适应场景应用的容器.ST ...

  4. Netty源代码学习——EventLoopGroup原理:NioEventLoopGroup分析

    类结构图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd29ya2luZ19icmFpbg==/font/5a6L5L2T/fontsize/400/f ...

  5. 学习vi和vim编辑(4):高速移动定位

    平时.第一步是编辑文本需要做将光标移动到需要编辑.因此,根据需要,将光标移动到目标数字键来编辑文本的速度在一定程度上. 一篇文章.主要介绍怎样高速移动光标. 依据屏幕来移动: 在一个有几千行文本的文件 ...

  6. python3 操作注册表

    1.1 读取 import winreg key = winreg.OpenKey(winreg.HKEY_CURRENT_USER,r"Software\Microsoft\Windows ...

  7. C# WPF报表打印

    前天我的一个同学由于打印报表而苦恼,所以就介绍了一下WPF的打印报表,希望能帮助到大家. 展示报表 1. 首先新建项“报表”,选定项目,右击,点击“添加”->“新建项”->“报表”

  8. OpenStack Summit Paris 会议记录 - 11-05-2014

    Ops/Design Summit - 2014-11-05 Record 1. Keystone Operators, Deployers, and DevOps 1. Icehouse中,SAML ...

  9. python解决urllib2乱码问题

    示例: #!/usr/bin/env python # -*- coding: utf-8 -*- import urllib import urllib2 def main(): url = &qu ...

  10. Linking different libraries for Debug and Release builds in Cmake on windows?

    问题叙述性说明: So I've got a library I'm compiling and I need to link different third party things in depe ...