Menginstal paket Python gdal
ke dalam virualenv di Linux
GDAL
menyediakan toolkit yang bagus untuk operasi terkait GEO. Namun, menginstalnya ke virtualenv di Linux bukanlah tugas sepele.
Resep ini menjelaskan, bagaimana cara melakukannya.
catatan
di sini saya menggunakan huruf kecil gdal
untuk paket Python dan huruf besar GDAL
untuk sistem perpustakaan umum.
Persyaratan
- memungkinkan menggunakan pustaka osgeo (diinstal melalui
gdal
paket Python) ke dalam virtualenv
- memungkinkan menginstal di Linux Ubuntu
Metode pemasangan
Ada beberapa metode untuk instalasi. Seseorang membutuhkan kompilasi dan membutuhkan beberapa menit lagi.
Yang lain menggunakan paket paket roda pygdal
dan sangat cepat. Lagi pula, untuk membuat paket roda, orang perlu membuatnya sekali dan pembuatannya tetap menyertakan langkah kompilasi.
Tentang GDAL
paket dan versi
GDAL
adalah pustaka umum berbasis C (++) untuk perhitungan terkait GEO.
GDAL
utilitas dapat menginstal sistem secara luas yang membuat pustaka bersama tersedia, tetapi tidak menginstal paket Python itu sendiri.
GDAL
datang dalam versi yang berbeda dan setiap distribusi Linux secara default menginstal versi yang berbeda.
Paket Python gdal
membutuhkan kompilasi dan tidak sepele untuk menginstal pada sistem berbasis Linux karena mengharapkan beberapa variabel lingkungan yang akan ditetapkan. Ini membuat instalasi menjadi virtualenv lebih sulit.
Setiap gdal
versi mungkin menggunakan versi yang berbeda GDAL
dan akan gagal menginstal jika versi yang diharapkan tidak ada dalam sistem.
Paket python pygdal
adalah alternatif gdal
, yang menginstal hal yang persis sama gdal
, tetapi melakukannya dengan cara yang jauh lebih ramah virtual.
pygdal
datang dalam versi yang mencerminkan GDAL
versi terkait . Jadi memiliki GDAL
versi 1.10.1 dalam sistem Anda harus menginstal pygdal
versi 1.10.1.
Paket python gdal
(dan juga pygdal
) menggunakan paket root python bernama
osgeo
dan memiliki set submodules, satu sedang osgeo.gdal
.
Jika diperlukan, selain versi default GDAL
dapat diinstal dan digunakan. Ini di luar cakupan deskripsi ini.
Paket roda dapat dikompilasi silang, ini juga di luar jangkauan.
Menginstal GDAL
ke sistem
Karena pygdal
memerlukan GDAL
pustaka bersama untuk hadir, kita harus menginstalnya terlebih dahulu.
Dengan asumsi GDAL
belum terinstal, panggilan gdal-config
akan mengeluh dan memberi Anda petunjuk bagaimana menindaklanjuti:
$ gdal-config --version
The program 'gdal-config' is currently not installed. You can install it by typing:
sudo apt-get install libgdal-dev
Ikuti petunjuknya dan pasang:
$ sudo apt-get install libgdal-dev
Setiap distribusi dapat menggunakan versi yang berbeda dari GDAL
. Untuk mengetahui yang kami gunakan:
$ gdal-config --version
1.10.1
Sekarang Anda tahu, GDAL
sudah terinstal dan versinya adalah 1.10.1 (versinya bisa bervariasi).
Instal pygdal
dari paket sumber (memerlukan kompilasi)
Saat pygdal
ini disediakan hanya dalam paket tar.gz, yang berisi sumber paket dan membutuhkan kompilasi.
Dengan asumsi, versi GDAL
is 1.10.1
dan virtualenv kami sudah diaktifkan:
$ pip install pygdal==1.10.1
Mungkin perlu beberapa saat untuk menyelesaikannya, apakah itu perlu numpy, yang mungkin juga memerlukan kompilasi. Tunggu saja.
Periksa, sudah terpasang:
$ pip freeze|grep pygdal
pygdal==1.10.1.0
Mulai sekarang, Anda dapat menggunakan paket osgeo dalam kode Python yang Anda inginkan dengan cara yang persis sama seolah-olah Anda akan menginstalnya dengan gdal
paket Python.
Membuat paket roda untuk pygdal
Perhatikan, paket roda itu harus dibuat untuk arsitektur yang persis sama, yaitu harus cocok:
- Arsitektur CPU
- OS (Linux / Windows)
Dalam kasus kami, itu juga harus cocok dengan versi yang GDAL
diinstal.
Langkah-langkah berikut dapat dilakukan dalam virtualenv atau tidak, sesuka Anda.
Pertama, pastikan, paket roda diinstal:
$ pip install wheel
Dengan asumsi, Anda telah GDAL
menginstal dan memiliki versi 1.10.1:
$ pip wheel pygdal==1.10.1.0
dan tunggu, sampai selesai.
Setelah ini, Anda akan menemukan ruang kemudi subdirektori dan berisi paket dengan ekstensi `whl`:
$ ls wheelhouse
numpy-1.9.1-cp27-none-linux_x86_64.whl
pygdal-1.10.1.0-cp27-none-linux_x86_64.whl
Instal pygdal
dari paket roda
Instalasi dari paket berformat roda jauh lebih cepat (satu detik dibandingkan menit), karena tidak memerlukan kompilasi.
Catatan, direktori dengan paket roda dapat memiliki nama apa pun, kami hanya akan menggunakan nama ruang kemudi.
Aktifkan virtualenv terlebih dahulu.
Pastikan, Anda memiliki dalam direktori ruang kemudi kedua paket roda yang diperlukan (untuk pygdal
dan numpy
).
Pastikan, GDAL
diinstal dan versi cocok dengan versi pygdal
.
Instal pygdal
dari paket roda:
$ pip install pygdal==1.10.1.0 -f wheelhouse
Ruang kemudi -f akan menunjuk ke direktori dengan file whl.
Tidak perlu menginstal numpy
, itu akan diinstal secara otomatis.