我试图让GeoDjango在ubuntu上运行并且遇到了GDAL的问题。
我已经下载并安装了GDAL而没有任何问题。
我必须在项目设置中添加以下行:
GDAL_LIBRARY_PATH = '/usr/local/lib/libgdal.so.1.15.1'
当我签入shell时,一切都很好:
In [1]: from django.contrib.gis import gdal
In [2]: gdal.HAS_GDAL
Out[2]: True
然而,当我尝试在official tutorial中运行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.so
和libgdal.so.1
符号链接到libgdal.so.15.1
非常感谢任何帮助。
答案 0 :(得分:24)
因此,对于记录,答案是将库路径/usr/local/lib/
添加到/etc/ld.so.conf
,然后运行$ sudo ldconfig
答案 1 :(得分:6)
sudo ldconfig
通常就是你需要的一切。在开始添加路径之前,请检查/etc/ld.so.conf
,/usr/local/lib
可能已经列出。
答案 2 :(得分:2)
根据django文档'安装GeoDjango时最常见的问题是无法找到外部共享库(例如,对于GEOS和GDAL)。'
通过源安装的gdal库的常用路径是/ usr / local / lib,因此如果运行bash命令:
export LD_LIBRARY_PATH=/usr/local/lib
然后
python应该能够找到
答案 3 :(得分: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