Windows下OSGEarth的编译过程

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编译全过程
posted @ 2019-06-30 11:54  charlee44  阅读(2972)  评论(0编辑  收藏  举报