Installazione del pacchetto Python gdal
in virualenv su Linux
GDAL
fornisce 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 gdal
per pacchetto Python e lettere maiuscole GDAL
per la libreria generale di sistema.
Requisiti
- consentire l'utilizzo delle librerie osgeo (installate tramite
gdal
pacchetto 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 pygdal
pacchetto 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 GDAL
pacchetti 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 gdal
richiede 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 gdal
versione potrebbe assumere una versione diversa GDAL
e 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.
pygdal
viene nelle versioni che riflettono la GDAL
versione relativa . Quindi con la GDAL
versione 1.10.1 nel sistema devi installare la pygdal
versione 1.10.1.
Il pacchetto Python gdal
(così come pygdal
) usa il pacchetto root python chiamato
osgeo
e ha un insieme di sottomoduli, uno dei quali osgeo.gdal
.
Se necessario, è GDAL
possibile 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 GDAL
nel sistema
Poiché è pygdal
necessario GDAL
che siano presenti librerie condivise, è necessario installarle prima.
Supponendo che GDAL
non sia ancora installato, la chiamata gdal-config
si 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 pygdal
dal pacchetto sorgente (richiede la compilazione)
Attualmente pygdal
viene fornito solo nel pacchetto tar.gz, che contiene le origini del pacchetto e richiede la compilazione.
Supponendo, la versione di GDAL
is 1.10.1
e 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 gdal
pacchetto 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 GDAL
installata.
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 GDAL
installato 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 pygdal
da 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 pygdal
e numpy
).
Assicurarsi che GDAL
sia installato e che la versione corrisponda alla versione di pygdal
.
Installa pygdal
dal 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.