Installation des bibliothèques géospatialesLien vers cette rubrique

GeoDjango utilise et fournit des interfaces pour les bibliothèques géospatiales libres suivantes :

Programme

Description

Requis

Versions prises en charge

GEOS

Geometry Engine Open Source

Oui

3.12, 3.11, 3.10, 3.9, 3.8

PROJ

Bibliothèque de projections cartographiques

Oui (uniquement PostgreSQL et SQLite)

9.x, 8.x, 7.x, 6.x, 5.x

GDAL

Bibliothèque

Oui

3.7, 3.6, 3.5, 3.4, 3.3, 3.2, 3.1, 3.0, 2.4

GeoIP

Bibliothèque de géolocalisation basée sur IP

Non

2

PostGIS

Extensions spatiales pour PostgreSQL

Oui (uniquement PostgreSQL)

3.4, 3.3, 3.2, 3.1, 3.0, 2.5

SpatiaLite

Extensions spatiales pour SQLite

Oui (uniquement SQLite)

5.1, 5.0, 4.3

Notez que des versions plus anciennes ou plus récentes de ces bibliothèques peuvent aussi très bien fonctionner avec GeoDjango. À vous de voir.

Sur Debian/Ubuntu, il est conseillé d’installer les paquets suivants qui installeront, directement ou par l’intermédiaire de dépendances, les bibliothèques géospatiales nécessaires :

Shell
$ sudo apt-get install binutils libproj-dev gdal-bin

Veuillez également consulter les instructions spécifiques si vous utilisez macOS ou Windows.

Compilation à partir des sourcesLien vers cette rubrique

Lors de l’installation à partir des sources sur les systèmes UNIX et GNU/Linux, suivez consciencieusement les instructions d’installation et installer les bibliothèques dans l’ordre indiqué. Si vous utilisez MySQL ou Oracle comme base de données spatiale, seul GEOS est nécessaire.

GEOSLien vers cette rubrique

GEOS est une bibliothèque C++ destinée aux opérations géométriques et constitue la représentation géométrique interne par défaut que GeoDjango utilise (derrière les objets géométriques « différés »). Spécifiquement, l’API de la bibliothèque C (par ex. libgeos_c.so) est appelée directement depuis Python à l’aide de ctypes.

Premièrement, téléchargez GEOS à partir du site web GEOS et décompressez l’archive des sources :

Shell
$ wget https://download.osgeo.org/geos/geos-X.Y.Z.tar.bz2
$ tar xjf geos-X.Y.Z.tar.bz2

Puis, passez dans le répertoire GEOS, créez un dossier build et passez dans ce dossier :

Shell
$ cd geos-X.Y.Z
$ mkdir build
$ cd build

Puis construisez et installez le paquet :

Shell
$ cmake -DCMAKE_BUILD_TYPE=Release ..
$ cmake --build .
$ sudo cmake --build . --target install

DépannageLien vers cette rubrique

Impossible de trouver la bibliothèque GEOSLien vers cette rubrique

Lorsque GeoDjango ne peut pas trouver GEOS, cette erreur apparaît :

Text
ImportError: Could not find the GEOS library (tried "geos_c"). Try setting GEOS_LIBRARY_PATH in your settings.

La solution la plus courante est de configurer correctement Réglages d’environnement de bibliothèques ou de définir GEOS_LIBRARY_PATH dans vos réglages.

Si vous utilisez un paquet binaire de GEOS (par ex. sur Ubuntu), il peut être utile de Installation de binutils.

GEOS_LIBRARY_PATHLien vers cette rubrique

Si votre bibliothèque GEOS se trouve à un emplacement non standard ou que vous ne souhaitez pas modifier le chemin des bibliothèques système, il est possible d’ajouter le réglage GEOS_LIBRARY_PATH dans votre fichier de réglages Django et d’y indiquer le chemin complet vers la bibliothèque GEOS en C. Par exemple :

Shell
GEOS_LIBRARY_PATH = '/home/bob/local/lib/libgeos_c.so'

Voir aussi Mes fichiers journaux sont remplis d’erreurs liées à GEOS.

PROJLien vers cette rubrique

PROJ est une bibliothèque de conversion de données géospatiales vers différents systèmes de référence de coordonnées.

Commencez par télécharger le code source de PROJ :

Shell
$ wget https://download.osgeo.org/proj/proj-X.Y.Z.tar.gz

… et les fichiers de projections (téléchargez proj-datumgrid-X.Y.tar.gz pour PROJ < 7.x) [1]:

Shell
$ wget https://download.osgeo.org/proj/proj-data-X.Y.tar.gz

Puis, décompressez l’archive de code source et extrayez les fichiers de projections dans le sous-répertoire data (utilisez le sous-répertoire nad pour PROJ < 6.x). Cela doit être faire avant la configuration :

Shell
$ tar xzf proj-X.Y.Z.tar.gz
$ cd proj-X.Y.Z/data
$ tar xzf ../../proj-data-X.Y.tar.gz
$ cd ../..

Pour PROJ 9.x et plus récent, les publications ne prennent plus qu’en charge les constructions avec CMake (voir PROJ RFC-7).

Pour construire avec CMake, vérifiez que votre système réponde aux exigences de construction. Créez ensuite un dossier build dans le répertoire PROJ et passez dans ce dossier :

Shell
$ cd proj-X.Y.Z
$ mkdir build
$ cd build

Pour terminer, lancez « configure », « make » et installez PROJ :

Shell
$ cmake ..
$ cmake --build .
$ sudo cmake --build . --target install

GDALLien vers cette rubrique

GDAL est une excellente bibliothèque géospatiale libre capable de lire la plupart des formats de données spatiales vectoriels et matriciels. Actuellement, GeoDjango ne prend en charge que les fonctionnalités des données vectorielles de GDAL [2]. GEOS et PROJ devraient être installés avant de compiler GDAL.

Téléchargez d’abord la dernière version publiée de GDAL et décompressez l’archive :

Shell
$ wget https://download.osgeo.org/gdal/X.Y.Z/gdal-X.Y.Z.tar.gz
$ tar xzf gdal-X.Y.Z.tar.gz

Pour GDAL 3.6.x et supérieur, les versions ne gèrent que les constructions utilisant CMake. Pour construire avec CMake, créez un dossier build dans le répertoire GDAL et placez-vous dans ce dossier :

Shell
$ cd gdal-X.Y.Z
$ mkdir build
$ cd build

Pour terminer, lancez « configure », « make » et installez GDAL :

Shell
$ cmake ..
$ cmake --build .
$ sudo cmake --build . --target install

Si vous rencontrez un problème, consultez la section dépannage ci-dessous pour y trouver des suggestions et des solutions.

DépannageLien vers cette rubrique

Impossible de trouver la bibliothèque GDALLien vers cette rubrique

Lorsque GeoDjango ne peut pas trouver la bibliothèque GDAL, configurez vos Réglages d’environnement de bibliothèques ou définissez GDAL_LIBRARY_PATH dans vos réglages.

GDAL_LIBRARY_PATHLien vers cette rubrique

Si votre bibliothèque GDAL se trouve à un emplacement non standard ou que vous ne souhaitez pas modifier le chemin des bibliothèques système, il est possible d’ajouter le réglage GDAL_LIBRARY_PATH dans votre fichier de réglages Django et d’y indiquer le chemin complet vers la bibliothèque GDAL. Par exemple :

Shell
GDAL_LIBRARY_PATH = '/home/sue/local/lib/libgdal.so'

Notes de bas de page