Ответ 1
Итак, для записи ответ заключался в том, чтобы добавить путь библиотеки /usr/local/lib/
к /etc/ld.so.conf
, затем запустите $ sudo ldconfig
Я пытаюсь запустить 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
Любая помощь будет высоко оценена.
Итак, для записи ответ заключался в том, чтобы добавить путь библиотеки /usr/local/lib/
к /etc/ld.so.conf
, затем запустите $ sudo ldconfig
sudo ldconfig
Часто это все, что вам нужно. Просто проверьте /etc/ld.so.conf
, прежде чем начинать добавлять пути, /usr/local/lib
уже может быть указан.
Согласно документации django "Самая распространенная проблема при установке GeoDjango заключается в том, что внешние разделяемые библиотеки (например, для GEOS и GDAL) не могут быть расположены. '
Обычный путь для библиотеки gdal, установленный через источник, это /usr/local/lib, поэтому, если вы запустите команду bash:
export LD_LIBRARY_PATH=/usr/local/lib
python должен затем найти
$ 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