c++ 编译GDAL库
来源:互联网 发布:华科网络与计算中心 编辑:程序博客网 时间:2024/05/16 12:28
一、GDAL简介
GDAL(Geospatial Data Abstraction Library)是一个在X/MIT许可协议下的开源栅格空间数据转换库。它利用抽象数据模型来表达所支持的各种文件格式。它还有一系列命令行工具来进行数据转换和处理。
OGR是GDAL项目的一个分支,功能与GDAL类似,只不过它提供对矢量数据的支持。
有很多著名的GIS类产品都使用了GDAL/OGR库,包括ESRI的ARCGIS 9.3、10.0、10.1、10.2,Google Earth和跨平台的GRASS GIS系统。利用GDAL/OGR库,可以使基于windows、win7、Linux的地理空间数据管理系统提供对矢量和栅格文件数据的支持。
二 、 GDAL源代码下载
各个版本的GDAL源代码下载地址:http://trac.osgeo.org/gdal/wiki/DownloadSource
以1.10.1版本作为示例:
1.10.1版本源码包下载地址:http://download.osgeo.org/gdal/1.10.1/gdal1101.zip
三、 osgeo源代码下载
各个版本的osgeo源代码下载地址: http://trac.osgeo.org/geos/以3.4.2版本作为示例:
3.4.2版本源码包下载地址: http://download.osgeo.org/geos/geos-3.4.2.tar.bz2
四、 GDAL + osgeo编译方法
1.准备材料:
(1)解压下载后的1.10.1版本GDAL源码压缩包,解压后如下图所示:
(2)解压下载后的3.4.2版本osgeo源码压缩包,解压后如下图所示:
2.配置相关文件
(1)解决中文路径、中文乱码,需要在下面的文档中加入一句代码:CPLSetConfigOption("GDAL_FILENAME_IS_UTF8","NO");
- gdalallregister.cpp源文件的GDALAllRegister()函数
- ogrregisterall.cpp 源文件的OGRAllRegister()函数
(2)为了osgeo编入至GDAL,修改nmake.opt文件
- #GEOS_DIR = C:/warmerda/geos ---->>“#GEOS_DIR = ”+osgeo源码目录
- #GEOS_CFLAGS = -1$(GEOS_DIR)/capi-1$(GEOS_DIR)/source/headers - DHAVE_GEOS ------>>
“#GEOS_CFLAGS = -1$(GEOS_DIR)/capi-1$(GEOS_DIR)/src
- #GEOS_LIB = $(GEOS_DIR)/source/geos_c_i.lib ---->>#GEOS_LIB = $(GEOS_DIR)/src/geos_c_i.lib
3.使用如下命令编译osgeo库
DEBUG版本:nmake -f makefile.vc
Release版本:nmake -f makefile.vc DEBUG=YES
4.依次使用如下命令编译GDAL+osgeo库
(1) 运行命令nmake -f makefile.vc DEBUG = 1 生成DEBUG版本:(Release版本:nmake -f makefile.vc);
(2) 运行命令nmake -f makefile.vc install DEBUG = 1 将生成的DEBUG版本复制到C:\warmerda\bld目录下;
(3)运行命令nmake -f makefile.vc devinstallDEBUG = 1将生成的DEBUG版本的头文件和lib文件,复制到C:\warmerda\bld目录下。
5.将C:\warmerda\bld\include设置为环境变量,以方便调用GDAL库;
6.如下图,设置vs2008环境
(1)在附加包含目录中加入“C:\warmerda\bld\include”;
(2)在附加依赖项中加入“C:\warmerda\bld\lib\gdal_i.lib”;
0 0
- GDAL库的编译
- 自定义编译gdal库
- c++ 编译GDAL库
- 编译GDAL静态库
- Windows7 编译 GDAL 库
- GDAL 编译
- GDAL编译
- GDAL编译
- GDAL编译
- 编译GDAL
- 编译gdal
- GDAL库在windows下的编译
- gdal库编译遇到的问题
- GDAL编译,链接cUrl库(libCurl)
- 下载编译好的gdal库
- 在Win7系统下编译GDAL库
- Linux环境g++编译GDAL动态库
- GDAL+HDF4+HDF5+netCDF库编译C#
- Java关键字static、final使用小结
- c#实例
- 民间各类恐怖请仙大法(上)(转帖)
- 网络端口查看命令
- Javascript的变量作用域
- c++ 编译GDAL库
- redis实战 SORT 命令
- 在c语言当中访问cpu中的寄存器
- android Toast大全(五种情形)建立属于你自己的Toast
- jQuery Tags Input Plugin(添加/删除标签插件)
- SQL 根据日期精确计算年龄
- java.lang.NoClassDefFoundError与java.lang.ClassNotFoundException
- android异步处理Handler+Thread使用进阶(二)
- 贪心算法——字典序最小问题