Django.core.exceptions.ImproperlyConfigured: Не удалось найти библиотеку GDAL (когда я пытаюсь запустить "python manage.py runserver")
Я установил PostGIS 3.3. Этот пакет PostGIS 3.3.2 включает
- PostGIS 3.3.2 w,
- GDAL 3.4.3 (SQLite 3.30.1, OpenJPEG 2.4.0, Expat 2.4.8, FreeXL 1.0.6),
- GEOS 3.11.1,
- Proj 7.2.1,
- pgRouting 3.4.2,
- osm2pgrouting 2.3.8,
- ogr_fdw 1.1.3 расширение обертки пространственных иностранных данных, и
- pgPointcloud 1.2.4, h3-pg 4.0.3.
Но когда я пытаюсь запустить приложение GeoDjango, оно останавливается со следующей ошибкой.
django.core.exceptions.ImproperlyConfigured: Не удалось найти библиотеку GDAL (пробовали "gdal304", "gdal303", "gdal302", "gdal301", "gdal300", "gdal204", "gdal203", "gdal202"). Установлен ли GDAL? Если да, попробуйте установить GDAL_LIBRARY_PATH в настройках.
Мои системные переменные показывают, что GDAL установлен и путь уже задан.
Я пытаюсь правильно настроить geodjango с gdal, поэтому прошу помощи в решении этого вопроса.
Теперь я сам решил эту проблему,
Перед установкой Django,
1. Настройка GDAL
запустите 'OSGeo4W installer'
в CMD (запуск от имени администратора) выполнить код по коду
set OSGEO4W_ROOT=C:\OSGeo4W
set PYTHON_ROOT=C:\Python310
set GDAL_DATA=%OSGEO4W_ROOT%\share\gdal
set PROJ_LIB=%OSGEO4W_ROOT%\share\proj
set PATH=%PATH%;%PYTHON_ROOT%;%OSGEO4W_ROOT%\bin
reg ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /f /d "%PATH%"
reg ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v GDAL_DATA /t REG_EXPAND_SZ /f /d "%GDAL_DATA%"
reg ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PROJ_LIB /t REG_EXPAND_SZ /f /d "%PROJ_LIB%"
2. После установки Django App
Добавил GeoDjango в файл 'settings.py' следующим образом
INSTALLED_APPS = [
# [...]
'django.contrib.gis'
]
GDAL_LIBRARY_PATH = "C:\\OSGeo4W\\bin\\gdal306.dll"
Теперь он работает правильно.