Python için GDAL ve OGR kuruluyor mu?


18

Python'da bazı kodlar geliştiriyorum ve GDAL / OGR python bağlarını kullanmak istiyorum. GDAL ve OGR python bağlantılarını kullanmak için yüklemem gereken minimum miktar nedir?

Sadece Python'dan kullanmak istiyorsam GDAL / OGR'yi kurmanın en kolay yolu nedir?
Hem mac hem de pencereler için geçerli bir cevap arıyorum.

GDAL Python Paket Dizini'nde (PyPi) listelenir, ancak bağımlılıklarının nasıl kurulacağını anlamıyorum (libgdal ve hem libgdal hem de numpy için başlık dosyaları). Belki tek yapmam gereken numpy yüklemek ve sonra bir yere libgdal almak ve eğer öyleyse, nerede? Windows yüklemesi , libgdal ve başlık dosyalarına ek olarak Windows Binaries'e ihtiyaç duyar mı ?

Python (2.5, 2.6, 2.7, 3) sürümüm için uygun python bağlarını almamı nasıl sağlayabilirim?
Python'dan GDAL ve OGR'yi kullanmak için PATH ortam değişkeninde değişiklik yapılmalı mı, yoksa her şeye site paketleri klasörüm ve tipik bir deyimden erişilebilir importmi?

Bu sorular bu soru ile ilgilidir, ancak cevap vermez:
GEOS, PROJ, GDAL / OGR'yi Mac OS X'te bir python virtualenv'e
kurmak Python ile GDAL nasıl kurulur?

Ben unutmamalıdır FWTools , OSGeo4W ve kyngchaos ogr sunmak ve piton bağlamaları ile gdal ve mükemmel, ama FWTools ve OSGeo4W gemiyi kendi piton ile oldukça varolan piton kurulum için kütüphaneler olarak hareket daha ve kyng kaos çerçeveler gibi görünen yalnızca OS X için.


"kyng kaos çerçeveleri sadece unix için görünüyor." Sanırım yanlış anlıyorsunuz, OS X için.
Sean

2
Windows Kurulumu için gis.stackexchange.com/questions/2276/… adresine bakın . Ben şahsen Win64 ve son zamanlarda olduğu gibi lfd.uci.edu/~gohlke/pythonlibs büyük bir hayranıyım
Mike T

3
Bunu 3 yıl sonra tekrar ziyaret ediyorum. Kısacası, problemin python kütüphanesi kurulumlarının C. KyngChaos, FWTools, Anaconda, vb. sahip oldukları Python sürümü ile. Temelde hiç kimse, pip install gdalGDAL'den gerekli tüm dosyaları otomatik olarak dahil etmesini ve derlemesini sağlamak için çapraz platform yolu oluşturmamıştır . GDAL ikili dosyalarını oluşturmak için başka araçlar kullanmanız beklenmektedir.
BenjaminGolder

Yanıtlar:


25

Bunu sadece kyng kaos araçlarını kullanmayı denediğim için ekliyorum, ancak Mac OS X makinemde bunu Anaconda ile çok, çok kolay bir şekilde yükleyebildim

conda install gdal

Kimsenin bunu tekrar bulması durumunda gönderi - Orijinal gönderinin 3 yaşında olduğunu biliyorum.


1
Anaconda kullandım ve GDAL için basitti, ama şimdi çalıştırabilmek istiyorum ogr2ogr -clipdst -105.53 39.9 -104.93 40.27 places.json ne_10m_admin_0_map_subunits.shpve bir .configure dosyasından GEOS'u etkinleştirmem gerekiyor gibi görünüyor - Anaconda'nın bu dosyayı nereye yerleştirdiği hakkında herhangi bir fikir? trac.osgeo.org/geos
blehman

Notu takdir ediyorum, ancak bu KyngChaos ikili dosyalarına benzer, çünkü hala mevcut bir python kurulumunu kullanmanıza izin vermiyor ve Anaconda ile birlikte verilen python sürümünü kullanmanız gerekiyor.
BenjaminGolder

KyngChaos şeyler olsa çalışamadım, bu nedenle fikir ekledi. Ama Anaconda, hangi Python sürümünü kuracağınızı seçmenize izin veriyor, bu yüzden ... Bilmiyorum, diğer özel kurulumların kullanılmasına ihtiyaç duymanız için bir nedeniniz var mı?
mmallek

1
Bu cevabı bulan bir Noel mucizesi, bilgisayarımdan Mac'e (çalışma) kurulumumu aktarmaya çalışırken yaklaşık 2 saatten fazla bir süre.
ScottieB

Bir ortam sıfırlaması yapmak zorunda kaldıktan sonra, bu artık benim için çalışmıyor. from osgeo import ogr
ScottieB

6

Öncelikle pencerelerde iseniz, o zaman hemen yükleyiciler var, bağlantıda yukarıdaki arkadaşlarıma söyledim.Ancak Linux'taysanız libgdal 1.11'i kurmanın yolu budur.

bu sayfaya git

http://packages.ubuntu.com/trusty/libgdal1h

sistem mimarinizi seçerek gerekli .deb dosyasını indirin.

indirdikten sonra indirilen dizine gidin ve bu komutu çalıştırın

$ sudo dpkg -i libgdal1h_1.10.1+dfsg-5ubuntu1_amd64.deb 

Şimdi bağımlılıkların kurulu olmadığını bildiren bir hata alacaksınız. şimdi bu komutu yaz

$ sudo apt-get -f install

Tüm bağımlılıkları otomatik olarak yükler, şimdi ana kurulum komutunu yeniden çalıştırır.

$ sudo dpkg -i libgdal1h_1.10.1+dfsg-5ubuntu1_amd64.deb 

Şimdi mutlu bir şekilde yüklenecek.Şimdi gdal için geliştirici kitaplıkları kurmamız gerekiyor.

$ sudo apt-get install libgdal1-dev 

export CPLUS_INCLUDE_PATH=/usr/include/gdal

export C_INCLUDE_PATH=/usr/include/gdal

Sonra numpy'niz varsa, linux kullanımında numpy ve scipy yüklemek için GDAL python kitaplığı kurulumuna devam edebilir, başka bir numpy kurabilirsiniz.

$ sudo apt-get install python-numpy python-scipy

Şimdi pip install GDAL kütüphanesini kullanıyor

$ sudo pip install GDAL

Bu cevap sayesinde (bana unuttuğum iki 'dışa aktarma' satırını hatırlatıyor), GDAL'ı bir sanal ortama yükleyebildiğim: (venv)mgc@mgc:~$ export CPLUS_INCLUDE_PATH = /usr/include/gdal (venv)mgc@mgc:~$ export C_INCLUDE_PATH = /usr/include/gdal (venv)mgc@mgc:~$ pip3 install gdal==1.11.2 (veya bilgisayarınızda yüklü gdal kütüphanesine karşılık gelen sürüm numarası).
mgc

5

Bu sitede , ortamınızı kurmanın bir yolu da dahil olmak üzere çeşitli öğreticiler bulunmaktadır . Ben kırmızı editör üzerinde pyscripter kullanıyorum, ama her ikisi de çalışmalı.


4

OS X'e kurmanın kolay bir yolunun farkında değilim, sanırım Windows cephesinde OSGEO4W gibi Kyng Chaos en iyi şey . Python bağlamaları sadece gerçek C / C ++ koduna sarılır, onları kaynaktan veya ikili dosyalardan kurmadan uzaklaşamazsınız.

easy_installPython sürümüne ve mevcut sistem kitaplıklarına bağlı olarak pip veya hile yapabilir; örneğin , Python 2.5 için PyPI dizini . GDAL'ın birden çok platformda ve Python'un birden çok sürümünde tutarlı bir şekilde yüklenmesi önemsiz olmaya devam eder, ancak birçok açıdan mantıklıdır: belki de en açık kaynak ve birçok özel CBS yazılımının altında yatan ve çok sayıda veri formatı bağımlılığına sahip tek kütüphane altında.


İşlerin bozulmadığından emin olmak için, işleri düzenli tutmaya yardımcı olmak için virtualenv ve virtualenvwrapper'a bakmak isteyebilirsiniz.
Jacques Tardie

PyPI'nin 2.4 (yalnızca win32, GDAL 1.5, 1.6 ile), 2.5 (mac / win32 ile GDAL 1.5, 1.6) ve 2.6 (yalnızca win32, GDAL 1.6 ile) dizinleri vardır. Hiçbirinde GDAL 1.7 yoktur. Cevabın özünü doğru anlarsam, esas olarak kolay olmadığını ve bazı durumlarda pip'in çalışabileceğini söylüyorsunuz. Kaynaktan nasıl oluşturulacağına bakmalı mıyım?
BenjaminGolder

@BenjaminGolder: doğru, benim deneyimime göre, özellikle birçok platformu / ve Python sürümünü desteklemeye çalışıyorsanız zor olabilir. Kaynaktan inşa etmek daha fazla iş gerektirir, ancak tutarlı bir talimatlar dizisi geliştirmeye çalışıyorsanız zaman ayırmaya değer olabilir. Sorunuzu, geliştiricilerin kendileri tarafından okunan GDAL listesinde de sormak isteyebilirsiniz.
scw

4

ArcGIS python kurulumunun yanında GDAL / OGR'yi kurarken tam olarak bu problemi yaşadım. Windows için çözümüm şuydu:

  1. Http://www.gisinternals.com/sdk/ adresinden gdal ve python bağlarının ikili dosyalarını indirin . Bu, farklı python sürümleri için python bağlarının sürümlerini içerir.
  2. Python dosyasındaki yolları manuel olarak güncelleyin:

os.environ ['PATH'] = "C: / Program Dosyaları (x86) / GDAL /;" + os.environ ['PATH']

oldpaths = sys.path

sys.path = ["C: / Program Dosyaları (x86) / GDAL / python /",]

sys.path.extend (oldpaths)

osgeo import ogr sitesinden

osgeo import osr sitesinden

gdalconst ithalatından *

osgeo import gdal sitesinden

Bu çok hoş değil, ancak farklı kurulumları karıştırmanıza izin veriyor. Ne yüklediğinizi de açıkça biliyorsunuz.

Düzenleme: sabit sözdizimi hatası


4

Ppa ilavesini önemsemiyorsanız,

$ sudo apt-add-repository ppa: ubuntugis / ubuntugis-kararsız

$ sudo apt-get güncellemesi

$ sudo apt-get install python-gdal


2019-04-19: Bir bulut ubuntu sunucusunda benim için çalışan bir ubuntu çözümüne ekleme, /programming//a/41613466/4355695

sudo add-apt-repository -y ppa:ubuntugis/ppa
sudo apt update 
sudo apt install gdal-bin python-gdal python3-gdal

Bu cevabın asıl posteri değilim ama bu soru kilitli, bu yüzden mevcut olanı düzenlemek zorundasınız. Bu kaynak (ppa: ubuntugis / ppa) muhtemelen öncekinden daha az "kararsız" ve sunucumda çalışmaya çalıştığım bir python2 programı için iyi çalıştı .


1

Windows kullanıcısıysanız, çok yararlı ikili dosyalar bulabilirsiniz , bunlarla çalışıyorum ve çok iyi çalışıyorlar ... İyi şanslar, şerefe


GIS @ SE'ye hoş geldiniz, cevabınızla daha fazla bilgi sağlamak daha iyidir, örneğin, belirli ikili dosyalar ve kurulum adımları, bu, soruyu soran kişi ve soruyu görüntüleyen gelecekteki insanlar için bilgileri çok daha kullanışlı hale getirir ve cevaplar.
Mark Cupitt

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.