Linux环境g++编译GDAL动态库操作方法
一、编译步骤
解压下载的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。
二、注意说明
1)注意这里是生成在自己设置目录而不是默认目录下,调用的时候需要设置环境变量或者拷贝到系统的lib目录,或者不用设置—prefix参数编译。
2)configure命令还可以用来设置debug版本或者release版本,只需要在后面添加--enable-debug参数就可以控制。默认情况下是关闭的。
--enable-debug enable debugging (disabled by default)
但我发现GDAL这个说明似乎有问题。我分别编译了带这个参数和不带这个参数两个版本:
带参数--enable-debug:
不带参数--enable-debug:
可以看到按照说明的release版本反而比debug版本体积大。一般而言,release版本总比debug版本信息小一点,而按照这篇文章《Linux下查看.so和可执行文件是否debug编译》进行检查是否debug编译,发现两者都是存在debug信息的,release版本比debug版本debug信息少一条:
这样到底哪个是debug版本反而弄不清楚了,只有留待以后研究了。
以上这篇Linux环境g++编译GDAL动态库操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
上一篇:C语言中左移和右移运算符详细介绍
栏 目:C语言
下一篇:C++动态内存分配(new/new[]和delete/delete[])详解
本文地址:https://www.xiuzhanwang.com/a1/Cyuyan/1539.html
您可能感兴趣的文章
- 01-10APUE笔记之:进程环境详解
- 01-10深入解析Linux下\r\n的问题
- 01-10Linux线程管理必备:解析互斥量与条件变量的详解
- 01-10Linux C 获取进程退出值的实现代码
- 01-10解析Linux下的时间函数:设置以及获取时间的方法
- 01-10深入探讨linux下进程的最大线程数、进程最大数、进程打开的文
- 01-10基于linux下获取时间函数的详解
- 01-10linux c 查找使用库的cflags与libs的方法详解
- 01-10深入探讨Linux静态库与动态库的详解(一看就懂)
- 01-10Linux下semop等待信号时出现Interrupted System Call错误(EINTR)解决方法
阅读排行
本栏相关
- 04-02c语言函数调用后清空内存 c语言调用
- 04-02func函数+在C语言 func函数在c语言中
- 04-02c语言的正则匹配函数 c语言正则表达
- 04-02c语言用函数写分段 用c语言表示分段
- 04-02c语言中对数函数的表达式 c语言中对
- 04-02c语言编写函数冒泡排序 c语言冒泡排
- 04-02c语言没有round函数 round c语言
- 04-02c语言分段函数怎么求 用c语言求分段
- 04-02C语言中怎么打出三角函数 c语言中怎
- 04-02c语言调用函数求fibo C语言调用函数求
随机阅读
- 01-10SublimeText编译C开发环境设置
- 01-11ajax实现页面的局部加载
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-10C#中split用法实例总结
- 01-10delphi制作wav文件的方法
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 04-02jquery与jsp,用jquery
- 08-05织梦dedecms什么时候用栏目交叉功能?