Linux环境g++编译GDAL动态库操作方法

作者:jingxian 时间:2022-02-23 09:41:45 

一、编译步骤

解压下载的GDAL源程序,并在命令行中切换到解压目录。


tar -xzvf gdal-2.1.3.tar.gz
cd gdal-2.1.3

GDAL可通过configure来实现一些自定义配置,可通过./configure –h命令来查看。--prefix=path表示设置GDAL的make install后的build目录,里面有生成的头文件和动态库。输入如下命令:


./configure --prefix=/root/Test/gdalbuild

这时可以发现目录中新生成了GDALmake.opt文件,该文件被包含在GNUmakefile中进行编译。输入命令:


make
make install

编译完成后,生成的动态库文件就在设置的目录下。Include目录下存放着头文件,lib目录存放动态库文件,bin目录存放可执行文件如gdalinfo。

Linux环境g++编译GDAL动态库操作方法

二、注意说明

1)注意这里是生成在自己设置目录而不是默认目录下,调用的时候需要设置环境变量或者拷贝到系统的lib目录,或者不用设置—prefix参数编译。

2)configure命令还可以用来设置debug版本或者release版本,只需要在后面添加--enable-debug参数就可以控制。默认情况下是关闭的。


--enable-debug  enable debugging (disabled by default)

但我发现GDAL这个说明似乎有问题。我分别编译了带这个参数和不带这个参数两个版本:

带参数--enable-debug:

Linux环境g++编译GDAL动态库操作方法

不带参数--enable-debug:

Linux环境g++编译GDAL动态库操作方法

可以看到按照说明的release版本反而比debug版本体积大。一般而言,release版本总比debug版本信息小一点,而按照这篇文章《Linux下查看.so和可执行文件是否debug编译》进行检查是否debug编译,发现两者都是存在debug信息的,release版本比debug版本debug信息少一条:

Linux环境g++编译GDAL动态库操作方法

这样到底哪个是debug版本反而弄不清楚了,只有留待以后研究了。

标签:gdal,linux,编译
0
投稿

猜你喜欢

  • Java NIO Path接口和Files类配合操作文件的实例

    2023-10-20 09:29:01
  • JAVA面试题之Forward与Redirect的区别详解

    2023-11-25 02:27:15
  • SpringBoot整合Zookeeper详细教程

    2022-07-24 11:33:09
  • 解决Feign获取异常信息的处理方案

    2023-12-11 13:17:54
  • Spring JPA之find拓展方法示例详解

    2021-12-11 03:50:49
  • java接口自动化测试框架及断言详解

    2022-01-23 20:01:36
  • java IO实现电脑搜索、删除功能的实例

    2021-12-17 07:16:14
  • Java中notify和notifyAll的区别及何时使用

    2022-07-03 02:08:43
  • Java实现word/pdf转html并在线预览

    2022-09-09 09:16:49
  • C# using的本质及使用详解

    2022-10-10 06:11:23
  • springboot ErrorPageFilter的实际应用详解

    2023-11-24 01:02:59
  • SpringBoot集成Beetl后统一处理页面异常的方法

    2023-11-10 19:57:55
  • 浅谈Java中Lambda表达式的相关操作

    2023-09-17 12:00:58
  • JavaWeb核心技术中Session与Cookie浅析

    2023-06-07 20:43:17
  • springboot日期转换器实现实例解析

    2023-01-31 13:16:45
  • SchedulingConfigurer实现动态定时,导致ApplicationRunner无效解决

    2021-12-01 11:26:10
  • springAop实现权限管理数据校验操作日志的场景分析

    2023-11-23 10:00:27
  • Android 判断SIM卡是中国移动\\中国联通\\中国电信(移动运营商)

    2023-01-22 04:20:27
  • Java Pattern和Matcher字符匹配方式

    2022-06-07 21:57:56
  • Spring实战之SpEl语法实例详解

    2023-09-18 07:56:03
  • asp之家 软件编程 m.aspxhome.com