GeoDjango - библиотека GDAL, дающая ошибку - программирование
Подтвердить что ты не робот

GeoDjango - библиотека GDAL, дающая ошибку

Я пытаюсь запустить 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.so и libgdal.so.1 обе символические ссылки на libgdal.so.15.1

Любая помощь будет высоко оценена.

4b9b3361

Ответ 1

Итак, для записи ответ заключался в том, чтобы добавить путь библиотеки /usr/local/lib/ к /etc/ld.so.conf, затем запустите $ sudo ldconfig

Ответ 2

sudo ldconfig

Часто это все, что вам нужно. Просто проверьте /etc/ld.so.conf, прежде чем начинать добавлять пути, /usr/local/lib уже может быть указан.

Ответ 3

Согласно документации django "Самая распространенная проблема при установке GeoDjango заключается в том, что внешние разделяемые библиотеки (например, для GEOS и GDAL) не могут быть расположены. '

Обычный путь для библиотеки gdal, установленный через источник, это /usr/local/lib, поэтому, если вы запустите команду bash:      

export LD_LIBRARY_PATH=/usr/local/lib

python должен затем найти