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

Til*_*und 3 gis django gdal 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
Run Code Online (Sandbox Code Playgroud)

在脚本中,它使用通用映射工具(GMT).我认为问题是链接器问题并且与之相关gdal.安装的版本是:

gdalinfo --version
GDAL 2.0.0, released 2015/06/14
Run Code Online (Sandbox Code Playgroud)

而且,确实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
Run Code Online (Sandbox Code Playgroud)

但是当我想安装时gdal1,它与已经安装的gdal(我认为是2.0)发生冲突.

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

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

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

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

nano /etc/ld.so.conf -> adding /usr/lib/
Run Code Online (Sandbox Code Playgroud)

/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
Run Code Online (Sandbox Code Playgroud)

ahm*_*med 12

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

ln -s /usr/lib/libgdal.so /usr/lib/libgdal.so.1
Run Code Online (Sandbox Code Playgroud)

之后,跑 /sbin/ldconfig