又发现LEDAPS程序的一个Bug

又发现LEDAPS程序的一个Bug

2015-01-27 作者: giser 浏览: 3377 次

摘要: LEDAPS程序是进行Landsat影像预处理的一个程序,在本博客中,对其编译安装做了一些[简单说明] (http://lab.osgeo.cn/18.html)。今天因为有些数据要进行处理,所以重新把这个程序拿出来,结果又发现了一个Bug. 这个Bug是在文...

LEDAPS程序是进行Landsat影像预处理的一个程序,在本博客中,对其编译安装做了一些[简单说明] (http://lab.osgeo.cn/18.html)。今天因为有些数据要进行处理,所以重新把这个程序拿出来,结果又发现了一个Bug. 这个Bug是在文件 ledapsSrc/src/env.sh中的。这个文件是在编译LEDAPS程序程序之前进行环境变量设置的。原文件如下:

export TOP=`pwd`
export BIN=`echo $TOP| sed 's/src/bin/'`
export GEOTIFF_INC=$TOP/include
export GEOTIFF_LIB=$TOP/lib
export HDFINC=$TOP/include
export HDFEOS_INC=$TOP/include
export TIFFINC=$TOP/include
export TIFFLIB=$TOP/lib
export HDFEOS_LIB=$TOP/lib
export HDFLIB=$TOP/lib
export PATH=$BIN:$PATH

上面内容就不多解释了。Bug出现在第2行,此句是设置BIN变量。但是sed命令在进行替换的时候,默认是替换第一次出现匹配内容的地方。这样,当TOP变量中出现2个以上src字符串的时候,路径的设置就会出错了(但是不会给出出错信息,在后面进行编译安装的时候会报错)。解决的方法就是指定sed替换的位置,将第2行修改为:

export BIN=`echo $TOP| sed 's/src$/bin/'`

另外修正一下原来介绍的安装的步骤中的一处,在设置环境变量时,使用了

sh env.sh

这在Gentoo中是没有问题的(原来是在Gentoo下安装的),但在Debian下是不行的。在Debian下,要使用下面的命令:

source env.sh

最后一个问题就是原来提到的ncdump程序需要单独安装,这个在Debian中比较简单,直接从源中安装:

aptitude install netcdf-bin

关注公众号
获取免费资源

随机推荐


Copyright © Since 2014. 开源地理空间基金会中文分会 吉ICP备05002032号

Powered by TorCMS

OSGeo 中国中心 邮件列表

问题讨论 : 要订阅或者退订列表,请点击 订阅

发言 : 请写信给: osgeo-china@lists.osgeo.org