GDAL2.1.1库在Ubuntu14.04下编译时遇到的问题处理方法

不用作任何调整,直接在Linux下编译GDAL2.1.1源码的步骤是:

$ ./configure
$ make
$ make install
非常简单, 这样也能正常生成gdal动态库、静态库,如果想将生成的文件放到指定的目录,则需改第一条命令为:

$ ./configure --prefix=/home/spring/gdal/gdal_lib
这样生成的动态库、静态库在编译的Linux 机子上是能正常使用的,但是将此动态库、静态库放在其它干净的机子上就会提示缺失各种第三方库,如libjpeg、libtiff等错误 ,这是因为有些项没有开启或关闭 导致的,编译时的配置条件改为:

$ ./configure --prefix=/home/spring/gdal/gdal_lib  --with-libz=internal --with-liblzma=no --with-pcraster=internal --with-png=internal --with-libtiff=internal --with-geotiff=internal --with-jpeg=internal --with-gif=internal
$ make
$ make install
同时需要调整源码中的文件包括:

(1)、gdal\frmts\gtiff\libtiff\gdal_libtiff_symbol_rename.h

(2)、gdal\frmts\gtiff\libtiff\tif_codec.c

(3)、gdal\frmts\gtiff\libtiff\tif_lzma.c

(4)、gdal\frmts\gtiff\libtiff\tiffiop.h

(5)、gdal\frmts\jpeg2000\jpeg2000dataset.cpp

问题基本上都是来源于gdal/frmts目录中各种图像格式解析的源码,可以在配置时选定支持哪些格式、不支持哪些格式。

执行完./configure指令后,显示的配置信息如下:


编译生成的库如果在其它机子上还有问题可以根据错误提示再次修改配置选项。

以上是在Ubuntu14.04 64位机上编译生成的库,如果想在64位机子上编译32位的库,则可以执行:

$ ./configure --build=i686-pc-linux-gun "CFLAGS=-m32" "CXXFLAGS=-m32" "LDFLAGS=-m32"  --prefix=/home/spring/gdal/gdal_lib_32 --with-libz=internal --with-liblzma=no --with-pcraster=internal --with-png=internal --with-libtiff=internal --with-geotiff=internal --with-jpeg=internal --with-gif=internal
$ make
$ make install
修改后的gdal2.1.1源码放在了GitHub上:

GitHubhttps://github.com/fengbingchun/GDAL_Test

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值