Installera 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.13, 3.12, 3.11, 3.10, 3.9, 3.8 |
|
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.10, 3.9, 3.8, 3.7, 3.6, 3.5, 3.4, 3.3, 3.2, 3.1 |
|
IP-baserat bibliotek för geolokalisering |
Nej |
2 |
|
`PostGIS`____ |
Rumsliga tillägg för PostgreSQL |
Ja (endast PostgreSQL) |
3.4, 3.3, 3.2, 3.1 |
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, följ installationsanvisningarna noggrant och installera biblioteken i angiven ordning. Om du använder MySQL eller Oracle 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 standardgeometrirepresentationen som används av GeoDjango (den ligger bakom de ”lata” geometrierna). Specifikt anropas C API-biblioteket (t.ex. libgeos_c.so) direkt från Python med hjälp av 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 ditt GEOS-bibliotek finns på en plats som inte är standard, eller om du inte vill ändra systemets bibliotekssökväg, kan inställningen GEOS_LIBRARY_PATH läggas till i din Django-inställningsfil med den fullständiga sökvägen till GEOS C-biblioteket. 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 har stöd för att läsa de flesta vektor- och rasterformat för spatiala data. För närvarande stöder GeoDjango endast GDAL:s vektordata-funktioner [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 ..
$ 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 ditt GDAL-bibliotek finns på en plats som inte är standard, eller om du inte vill ändra systemets bibliotekssökväg, kan inställningen GDAL_LIBRARY_PATH läggas till i din Django-inställningsfil med den fullständiga sökvägen till GDAL-biblioteket. Till exempel:
GDAL_LIBRARY_PATH = '/home/sue/local/lib/libgdal.so'
Fotnoter