Installazione del pacchetto Python gdalin virualenv su Linux
GDALfornisce un bel toolkit per le operazioni relative a GEO Tuttavia, installarlo su virtualenv su Linux non è cosa da poco.
Questa ricetta descrive come farlo.
Nota
qui uso lettere minuscole gdalper pacchetto Python e lettere maiuscole GDALper la libreria generale di sistema.
Requisiti
- consentire l'utilizzo delle librerie osgeo (installate tramite
gdalpacchetto Python) in virtualenv
- consentire l'installazione su Linux Ubuntu
Metodi di installazione
Esistono diversi metodi per l'installazione. Uno richiede la compilazione e richiede qualche minuto in più.
L'altro sta usando il pacchetto ruote del pygdalpacchetto ed è molto veloce. Ad ogni modo, per creare il pacchetto ruote è necessario crearlo una volta e la creazione include comunque la fase di compilazione.
Informazioni su GDALpacchetti e versioni
GDAL è una libreria generale basata su C (++) per calcoli relativi a GEO.
GDAL le utility possono essere installate a livello di sistema, ciò che rende disponibili le librerie condivise, ma non installa il pacchetto Python stesso.
GDAL è disponibile in diverse versioni e ogni distribuzione Linux può installare di default una versione diversa.
Il pacchetto Python gdalrichiede la compilazione e non è banale da installare su sistemi basati su Linux poiché prevede che vengano impostate poche variabili ambientali. Ciò rende l'installazione in virtualenv più difficile.
Ogni gdalversione potrebbe assumere una versione diversa GDALe l'installazione non riuscirà se la versione prevista non è presente nel sistema.
Il pacchetto Python pygdalè un'alternativa a gdal, che installa esattamente le stesse cose di gdal, ma lo fa in modo molto più intuitivo.
pygdalviene nelle versioni che riflettono la GDALversione relativa . Quindi con la GDAL
versione 1.10.1 nel sistema devi installare la pygdalversione 1.10.1.
Il pacchetto Python gdal(così come pygdal) usa il pacchetto root python chiamato
osgeoe ha un insieme di sottomoduli, uno dei quali osgeo.gdal.
Se necessario, è GDALpossibile installare e utilizzare diverse versioni predefinite di . Questo non rientra nell'ambito di questa descrizione.
I pacchetti ruote possono essere compilati in modo incrociato, anche questo non rientra nell'ambito di applicazione.
Installazione GDALnel sistema
Poiché è pygdalnecessario GDALche siano presenti librerie condivise, è necessario installarle prima.
Supponendo che GDALnon sia ancora installato, la chiamata gdal-configsi lamenterà e ti darà un suggerimento su come seguire:
$ gdal-config --version
The program 'gdal-config' is currently not installed. You can install it by typing:
sudo apt-get install libgdal-dev
Segui il suggerimento e installalo:
$ sudo apt-get install libgdal-dev
Ogni distribuzione può utilizzare una versione diversa di GDAL. Per scoprire quale utilizziamo:
$ gdal-config --version
1.10.1
Ora sai, GDALè installato e la versione è 1.10.1 (la versione può variare).
Installa pygdaldal pacchetto sorgente (richiede la compilazione)
Attualmente pygdalviene fornito solo nel pacchetto tar.gz, che contiene le origini del pacchetto e richiede la compilazione.
Supponendo, la versione di GDALis 1.10.1e che il nostro virtualenv sia già attivato:
$ pip install pygdal==1.10.1
Potrebbe volerci un po 'per completare, se ha bisogno di intorpidimento, che potrebbe anche richiedere un po' di compilazione. Aspetta.
Verifica, è installato:
$ pip freeze|grep pygdal
pygdal==1.10.1.0
Da ora in poi, puoi usare il pacchetto osgeo nel tuo codice Python come preferisci esattamente come se lo installassi dal gdalpacchetto Python.
Creazione del pacchetto ruote per pygdal
Si noti che i pacchetti di ruote devono essere creati esattamente per la stessa architettura, vale a dire devono corrispondere a:
- Architettura della CPU
- SO (Linux / Windows)
Nel nostro caso, deve anche corrispondere alla versione di GDALinstallata.
I seguenti passaggi possono essere eseguiti in virtualenv o meno, come preferisci.
Innanzitutto, assicurati che il pacchetto ruote sia installato:
$ pip install wheel
Supponendo che tu abbia GDALinstallato e abbia la versione 1.10.1:
$ pip wheel pygdal==1.10.1.0
e aspetta, fino al completamento.
Successivamente, troverai la timoneria della sottodirectory e conterrà i pacchetti con estensione "whl":
$ ls wheelhouse
numpy-1.9.1-cp27-none-linux_x86_64.whl
pygdal-1.10.1.0-cp27-none-linux_x86_64.whl
Installa pygdalda pacchetti ruote
L'installazione da pacchetti formattati con ruote è molto più veloce (un secondo rispetto ai minuti), in quanto non richiede compilazione.
Nota che quella directory con i pacchetti di ruote può avere qualsiasi nome, useremo solo il nome della timoneria.
Attiva prima virtualenv.
Assicurati di avere nella directory timoneria entrambi i pacchetti ruote richiesti (per pygdale numpy).
Assicurarsi che GDALsia installato e che la versione corrisponda alla versione di pygdal.
Installa pygdaldal pacchetto ruote:
$ pip install pygdal==1.10.1.0 -f wheelhouse
La timoneria -f deve puntare alla directory con i file whl.
Non è necessario installarlo numpy, viene installato automaticamente.