16

我试图让 GeoDjango 在 ubuntu 上运行并且遇到了 GDAL 的问题。

我已经下载并安装了 GDAL 没有问题。

我必须将以下行添加到我的项目设置中:

GDAL_LIBRARY_PATH = '/usr/local/lib/libgdal.so.1.15.1'  

当我检查外壳时,一切都很好:

In [1]: from django.contrib.gis import gdal
In [2]: gdal.HAS_GDAL
Out[2]: True

但是,当我在官方教程中尝试运行 ogrinfo 时,出现以下错误:

$ ogrinfo world/data/TM_WORLD_BORDERS-0.3.shp
ogrinfo: error while loading shared libraries: libgdal.so.1: cannot open shared object file: No such file or directory

GDAL 文件位于:

/usr/local/lib/libgdal.a
/usr/local/lib/libgdal.la
/usr/local/lib/libgdal.so
/usr/local/lib/libgdal.so.1
/usr/local/lib/libgdal.so.1.15.1

libgdal.solibgdal.so.1两个符号链接到libgdal.so.15.1

任何帮助将非常感激。

4

4 回答 4

24

因此,为了记录,答案是将库路径添加/usr/local/lib//etc/ld.so.conf,然后运行$ sudo ldconfig

于 2012-02-02T15:00:29.527 回答
6
sudo ldconfig

通常是你所需要的。/etc/ld.so.conf在开始添加路径之前检查一下,/usr/local/lib可能已经列出。

于 2015-02-14T18:34:26.563 回答
2

根据 django 文档,“安装 GeoDjango 时最常见的问题是无法找到外部共享库(例如,用于 GEOS 和 GDAL)。”

通过源安装的 gdal 库的通常路径是 /usr/local/lib,因此如果您运行 bash 命令:

导出 LD_LIBRARY_PATH=/usr/local/lib

然后python应该能够找到

于 2014-04-11T11:08:02.900 回答
0
$ sudo echo /usr/local/lib >> /etc/ld.so.conf
$ sudo ldconfig

https://docs.djangoproject.com/en/dev/ref/contrib/gis/install/#setting-system-library-path

于 2014-03-21T13:23:14.450 回答