Installera geospatiala bibliotekLink to this heading
Geospatiala bibliotekLink to this heading
GeoDjango använder och/eller tillhandahåller gränssnitt för följande geospatiala bibliotek med öppen källkod:
Program |
Beskrivning |
Obligatorisk |
Versioner som stöds |
|---|---|---|---|
Geometry Engine Open Source |
Ja |
3.14, 3.13, 3.12, 3.11, 3.10 |
|
Bibliotek för kartografiska projektioner |
Ja (endast PostgreSQL och SQLite) |
9.x, 8.x, 7.x, 6.x |
|
Bibliotek för abstraktion av geospatiala data |
Ja |
3.13, 3.12, 3.11, 3.10, 3.9, 3.8, 3.7, 3.6, 3.5, 3.4, 3.3 |
|
IP-baserat bibliotek för geolokalisering |
Nej |
2 |
|
`PostGIS`____ |
Rumsliga tillägg för PostgreSQL |
Ja (endast PostgreSQL) |
3.6, 3.5, 3.4, 3.3, 3.2 |
Spatiala tillägg för SQLite |
Ja (endast SQLite) |
5.1, 5.0, 4.3 |
Observera att äldre eller nyare versioner av dessa bibliotek kan också fungera helt bra med GeoDjango. Din körsträcka kan variera.
På Debian/Ubuntu rekommenderas att du installerar följande paket som installerar, direkt eller genom beroenden, de nödvändiga geospatiala biblioteken:
$ sudo apt-get install binutils libproj-dev gdal-bin
Se även plattformsspecifika instruktioner om du använder macOS eller Fönster.
Bygga från källanLink to this heading
Vid installation från källkod på UNIX- och GNU/Linux-system ska installationsanvisningarna följas noggrant och biblioteken installeras i angiven ordning. Om MySQL eller Oracle används som spatial databas krävs endast GEOS.
GEOSLink to this heading
GEOS är ett C++-bibliotek för att utföra geometriska operationer och är den interna standardrepresentationen för geometri som används av GeoDjango (det ligger bakom de ”lata” geometrierna). Närmare bestämt anropas C API-biblioteket (t.ex. libgeos_c.so) direkt från Python med ctypes.
Först laddar du ner GEOS från GEOS webbplats och avtar källarkivet:
$ wget https://download.osgeo.org/geos/geos-X.Y.Z.tar.bz2
$ tar xjf geos-X.Y.Z.tar.bz2
Gå sedan in i GEOS-katalogen, skapa en build-mapp och gå in i den:
$ cd geos-X.Y.Z
$ mkdir build
$ cd build
Bygg sedan och installera paketet:
$ cmake -DCMAKE_BUILD_TYPE=Release ..
$ cmake --build .
$ sudo cmake --build . --target install
FelsökningLink to this heading
Kan inte hitta GEOS-biblioteketLink to this heading
När GeoDjango inte kan hitta GEOS utlöses detta fel:
ImportError: Could not find the GEOS library (tried "geos_c"). Try setting GEOS_LIBRARY_PATH in your settings.
Den vanligaste lösningen är att korrekt konfigurera din Inställningar för biblioteksmiljö eller ange GEOS_BIBLIOTEK_ SÖKVÄG i dina inställningar.
Om du använder ett binärt paket av GEOS (t.ex. på Ubuntu) kan du behöva Installera binutils.
GEOS_BIBLIOTEK_ SÖKVÄGLink to this heading
Om GEOS-biblioteket finns på en plats som inte är standard, eller om du inte vill ändra systemets biblioteksökväg, kan inställningen GEOS_LIBRARY_PATH läggas till i Djangos inställningsfil med den fullständiga sökvägen till C-biblioteket GEOS. Till exempel:
GEOS_LIBRARY_PATH = '/home/bob/local/lib/libgeos_c.so'
PROJLink to this heading
PROJ är ett bibliotek för konvertering av geospatiala data till olika koordinatreferenssystem.
Först laddar du ner PROJ-källkoden:
$ wget https://download.osgeo.org/proj/proj-X.Y.Z.tar.gz
… och datumskiftningsfiler (ladda ner proj-datumgrid-X.Y.tar.gz för PROJ < 7.x) [1]:
$ wget https://download.osgeo.org/proj/proj-data-X.Y.tar.gz
Ta sedan fram källkodsarkivet och extrahera datumskiftfilerna i underkatalogen data. Detta måste göras förut för konfigurationen:
$ tar xzf proj-X.Y.Z.tar.gz
$ cd proj-X.Y.Z/data
$ tar xzf ../../proj-data-X.Y.tar.gz
$ cd ../..
För PROJ 9.x och senare stöder utgåvorna endast byggande med CMake (se PROJ RFC-7).
För att bygga med CMake måste du se till att ditt system uppfyller build requirements. Skapa sedan en build-mapp i PROJ-katalogen och gå in i den:
$ cd proj-X.Y.Z
$ mkdir build
$ cd build
Slutligen ska du konfigurera, skapa och installera PROJ:
$ cmake ..
$ cmake --build .
$ sudo cmake --build . --target install
GDALLink to this heading
GDAL är ett utmärkt geospatialt bibliotek med öppen källkod som stöder läsning av de flesta spatiala dataformat för vektor och raster. För närvarande stöder GeoDjango endast GDAL:s vektordatakapacitet [2]. GEOS och PROJ bör installeras innan GDAL byggs.
Ladda först ner den senaste versionen av GDAL och öppna arkivet:
$ wget https://download.osgeo.org/gdal/X.Y.Z/gdal-X.Y.Z.tar.gz
$ tar xzf gdal-X.Y.Z.tar.gz
För GDAL 3.6.x och senare stöder utgåvorna endast byggande med CMake. Om du vill bygga med CMake skapar du en build-mapp i GDAL-katalogen och går in i den:
$ cd gdal-X.Y.Z
$ mkdir build
$ cd build
Slutligen ska du konfigurera, skapa och installera GDAL:
$ cmake -DCMAKE_BUILD_TYPE=Release ..
$ cmake --build .
$ sudo cmake --build . --target install
Om du har några problem, se felsökningsavsnittet nedan för förslag och lösningar.
FelsökningLink to this heading
Hittar inte GDAL-biblioteketLink to this heading
När GeoDjango inte kan hitta GDAL-biblioteket, konfigurera din Inställningar för biblioteksmiljö eller ange GDAL_BIBLIOTEK_VÄG i dina inställningar.
GDAL_BIBLIOTEK_VÄGLink to this heading
Om GDAL-biblioteket finns på en plats som inte är standard, eller om du inte vill ändra systemets biblioteksökväg, kan inställningen GDAL_LIBRARY_PATH läggas till i Djangos inställningsfil med den fullständiga sökvägen till GDAL-biblioteket. Till exempel:
GDAL_LIBRARY_PATH = '/home/sue/local/lib/libgdal.so'
Fotnoter