vs2017编译64位Spatialite+GDAL+Osg+OsgEarth所有相关库版本推荐及源码


前言

最近公司软件版本升级,以前gis相关库有自行编译的有从网上下载的,而且当初编译的源码都被以前的同事带走了,某些bug想要调试源码变得不可能,于是,端午期间连续奋战18小时,编译了一套gis相关库,包括主要的sqlite,geos,proj,libcurl,spatialite,gdal,osg,osgearth等等一个系列,编译库过程最头疼的就是版本不适配问题,有些库被很多库强依赖,比如geos,proj就是spatialite,gdal,osg等依赖,版本不适配导致编译最后一个库是前面的所有工作可能白费,所以贴一个成功的列表分享给大家,亲身实验全程没有磕磕巴巴。

一、版本列表

名称

版本

用途

zlib1.2.13zlib是一套通用的解压缩开源库
giflib5.1.4giflib 是一个用于读取和写入 gif 图像的开源库
sqlite33420000SQLite是一款轻型的开源数据库
libpng1639Libpng 是一个用于读取和写入 png 图像的开源库
libjpeg9eLibjpeg是一个用于读取和写入 jpeg 图像的开源库
libLZMA5.2.5类似zlib,是一个Deflate和LZ77算法改良和优化后的压缩算法库
libTiff4.5.0libTiff是一个用于读取和写入 tiff 图像的开源库
openjpeg2.5.0OpenJPEG 是用 C 语言编写的开源 JPEG 2000 编解码器
OpenSSL3.0.3OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份
libSSH21.10.0libssh2是一个开源的C函数库,用来实现SSH2协议
libcurl7.83.1libcurl主要功能就是用不同的协议连接和沟通不同的服务器,相当封装了的socket
iconv1.17libiconv是一个提供编码转换的开源库
libxml22.9.14Libxml2 是一个xml c语言版的解析器
proj9.0.0PROJ 是一款通用坐标转换库
geos3.9.3GEOS 是一个用于计算几何的 C/C++ 库
xerces3.2.4Xerces-c是面向C/C++语言的XML文档解析库
freetype2.12.1FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎
FBXfbx202034_fbxsdk_vs2017_win.exeFBX是Autodesk公司出品的一款用于跨平台的免费三维创作与交换格式的软件
FreeXL1.0.6FreeXL是一个开源库,从电子表格中提取有效数据
librttopo1.1.0RT Topo是一个开源的拓扑库,用于创新和管理用户提供的拓扑关系
minzipzlib附带minizip是一个用 C 语言编写的 zip 解压缩开源库
Shapelib1.5.0Shapelib是一个读取、写入和更新ESRI Shapefile 和相关属性文件 (.dbf) 的开源库
Spatialite5.0.1SpatiaLite是一个开源库,旨在扩展SQLite核心,从而支持成熟的 Spatial SQL 功能
GeoTIFF1.7.1GeoTiff利用Tiff表达Geo(地理)信息的思想,是Tiff的一种特例
webp1.2.2WebP(发音:weppy)是一种提供了有损压缩与无损压缩(可逆压缩)的图片文件格式
LZ41.9.3LZ4 是一种无损压缩算法
zstd1.5.2Zstandard也叫做zstd,是Facebook开源的一种快速无损压缩算法库
fontconfig5.1.0Fontconfig是一个字体配置和自定义开源库
libpixman0.40.0Pixman 是一个用于像素操作的低级软件库,提供图像合成和梯形光栅化等功能
gdal3.5.0GDAL 是一个栅格和矢量地理空间数据格式的翻译器库
libspatialindex1.9.3libspatialindex是一种高效的C++空间索引库
Expat2.4.8Expat是一个用C语言开发的、用来解析XML文档的开发库
libzip1.9.2libzip是一个开源C库,用于读取,创建和修改zip文件
protobuf21.2Protobuf (protocol buffer) 是谷歌内部的混合语言数据标准
exiv20.27.5Exiv2是一个用于管理映像元数据的跨平台c++库和命令行实用程序
osg3.6.5OpenSceneGraph简称OSG,是一个开源的三维引擎
osgearth3.3osgEarth是基于三维引擎osg开发的三维数字地球引擎库

二、源码截图

可自行对照着下载官网版本,有些库windows下并不好编译,可以不编译如cairo,不影响最后使用。 


三、成果截图

 

 

 


  四、OsgEarth Demo

 


五、源码链接

链接:https://pan.baidu.com/s/1YFftu_RzP3GKpwkH1oLXjA 
提取码:a36p 

总结

我用的是vs2017 64位编译,某些库cmake内没有区别debug版本和release版本,也就是最后成果名称一样不带d,可以从vs2017如下位置查看具体产出成果:

 

或者从连接器位置查看宏具体的输出:

 

编译过程中挨个去修改目标文件名称显然不现实,可以通过修改CMakeLists.txt和nmake.opt文件内的参数实现统一添加。Cmake和nmake如何加d可自行百度。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值