...在windows系统mingw32编译GDAL库、搭建开发环境和基础Demo
发布网友
发布时间:2024-09-30 18:17
我来回答
共1个回答
热心网友
时间:2024-11-07 21:07
前言
在麒麟系统上进行全球北斗定位终端开发时,调试工具制作一个Windows版本以便校对,北斗GPS发送的是大地坐标,应用需要的是经纬度坐标。转换过程中,我们选择了GDAL库进行转换,避免使用公式计算的繁琐与可能的误差。
注意
不建议使用mingw32版本的GDAL库进行编译,过程异常曲折。
大地坐标简介
大地坐标(Geodetic coordinate)在大地测量中以参考椭球面为基准面,地面点P的位置由大地经度L、大地纬度B和大地高H确定。
原理
大地经度是参考椭球面上点与起始大地子午面(通过格林尼治天文台的子午面)之间的夹角,向东为东经,向西为西经。大地纬度是法线与赤道面的夹角,由赤道面起算,向北为北纬,向南为南纬。大地高是地面点到参考椭球面的距离。
北京54坐标系(BJZ54)
北京54坐标系基于克拉索夫斯基椭球,是通过局部平差后产生的坐标系,由经度L54、纬度M54和大地高H54表示。
世界大地坐标系统(WGS-84)
WGS-84坐标系是世界大地坐标系统,使用WGS-84椭球体,原点设在地球中心,X轴指向格林尼治参考子午线与赤道面的交点,Z轴指向地极方向,Y轴与X、Z轴构成右手坐标系。
国家大地坐标系(CGCS2000)
CGCS2000是当前最新的国家大地坐标系,原点设在包括海洋和大气的整个地球的质量中心,X轴指向格林尼治参考子午线与赤道面的交点,Z轴指向地极方向。
GDAL库介绍
GDAL(Geospatial Data Abstraction Library)是一个开源栅格空间数据转换库,支持各种文件格式,提供命令行工具进行数据转换和处理。OGR是GDAL的一个分支,支持矢量数据。
功能与特征
OGR体系结构
GDAL下载地址
GDAL的下载地址为:gdal.org/download.html,选择3.2.1版本。
准备MSYS2环境
在MSYS2中配置编译环境,可能遇到系统枚举未知问题,尝试使用msys2或msys642解决,确保成功编译。
使用Qt5.9.3 mingw32进行编译
将Qt5.9.3 mingw32编译器复制到MSYS2根目录,确保引入成功。
路径配置与编译GDAL
配置路径、编译GDAL,包括下载、解压、配置、编译和安装步骤,遇到问题时使用强制方法解决问题。
编译PROJ6
类似步骤进行下载、解压、配置、编译和安装PROJ6,解决可能遇到的问题。
编译SQLITE3
下载、解压、配置、编译和安装SQLITE3,解决配置错误,确保库正确编译。
编译pkgconfig(废弃步骤)
尝试编译pkgconfig,但由于废弃不再使用,此步骤仅保留。
结尾
经过一系列尝试与优化,成功编译并安装GDAL、PROJ6和SQLITE3库。建议读者避免使用mingw32版本的GDAL库,以简化编译过程。