加载共享库时出错:libgdal.so.1 in archlinux

error while loading shared libraries: libgdal.so.1 in archlinux

我(我自己是一个编程新手)在archlinux中启动一个朋友编写的脚本时得到以下错误信息:

/usr/bin/psxy: error while loading shared libraries: libgdal.so.1: cannot open shared object file: No such file or directory
/usr/bin/psbasemap: error while loading shared libraries: libgdal.so.1: cannot open shared object file: No such file or directory
/usr/bin/ps2raster: error while loading shared libraries: libgdal.so.1: cannot open shared object file: No such file or directory
/usr/bin/psxy: error while loading shared libraries: libgdal.so.1: cannot open shared object file: No such file or directory

此时在脚本中它使用 Generic Mapping Tools (GMT)。我认为问题是链接器问题并且与 gdal 有关。安装的版本是:

gdalinfo --version
GDAL 2.0.0, released 2015/06/14

而且,确实 libgdal.so.1 没有安装(或已重命名为 /usr/lib/libgdal.so?):

/sbin/ldconfig -p | grep gdal
    libgdal.so.20 (libc6,x86-64) => /usr/lib/libgdal.so.20
    libgdal.so (libc6,x86-64) => /usr/lib/libgdal.so

但是当我要安装gdal1的时候,和已经安装的gdal(我估计是2.0)有冲突。

我能做什么?我是否必须编辑脚本,如果需要,在哪里使用 gdal?

编辑: 我在执行脚本之前输入 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib,出现与上面相同的错误消息。

然后,我尝试通过 locate libgdal 编辑 ldconfig 文件:

/usr/lib/libgdal.so
/usr/lib/libgdal.so.20
/usr/lib/libgdal.so.20.0.0

nano /etc/ld.so.conf -> adding /usr/lib/

但是/sbin/ldconfig -p | grep gdal仍然显示:

libgdal.so.20 (libc6,x86-64) => /usr/lib/libgdal.so.20
libgdal.so (libc6,x86-64) => /usr/lib/libgdal.so

您可以创建指向该库的符号链接,以便您的应用程序可以找到它:

ln -s /usr/lib/libgdal.so /usr/lib/libgdal.so.1

之后,运行 /sbin/ldconfig