Instalando o GDAL em Python no Windows 7?

9

Estou tendo problemas para instalar a biblioteca gdal para python. Eu uso o Windows 7 e tenho o WinPython 2.7.9.2, que executa o Python 2.7.9. Eu gostaria de usar gdal + Python para manipulação de varredura.

Eu li que o PIP é a maneira preferida para instalar pacotes no Windows e que é empacotado com o Python 2.7.9. Editei minha variável de ambiente PATH para incluir pip e python:

;c:\~\WinPython-32bit-2.7.9.2\python-2.7.9\Scripts\;c:\~WinPython-32bit-2.7.9.2\python-2.7.9\

agora posso executar python e pip diretamente no prompt de comando.

O erro aparece quando eu digito

c:\>pip install gdal

que dá:

C:\~\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : warning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
extensions/gdal_wrap.cpp(2855) : fatal error C1083: Cannot open include file: 'cpl_port.h': No such file or directory
error: command 'C:\\~\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2

Então, aparentemente, algo chamado 'cpl_port.h' está ausente. Isso também é descrito nesta pergunta, onde é sugerido que os arquivos de cabeçalho não possam ser encontrados. A solução fornecida nesse segmento, no entanto, é baseada em LINUX e incompatível com o meu Windows.

Não tenho muita certeza de como proceder a partir daqui. Devo renunciar ao PIP e tentar outra rota?

Eu verifiquei que o PIP funciona instalando alguns outros pacotes, então o problema parece estar com o gdal.

Hans Roelofsen
fonte
Um fluxo de trabalho simples é instalar o Python do instalador do Windows msi e as ligações do GDAL + python também dos instaladores do msi, que podem ser baixados em gisinternals.com.
user30184
Oi, obrigado por seu comentário. Você pode elaborar um pouco? Eu ouço muito o termo 'ligações', mas não tenho noção do que você quer dizer com isso. Da mesma forma, o que é o instalador MSI? Lembre-se de que eu já tenho o Python instalado e prefiro não instalá-lo novamente, se puder evitá-lo.
Hans Roelofsen 26/03
MSI significa instalador da Microsoft. Para o usuário, é um arquivo que termina com .msi que você clica duas vezes e inicia a instalação. Com as ligações, você pode chamar o código GDAL que está escrito em C / C ++ em Python files.opensuse.org/opensuse/en/e/eb/… . Se você já possui o Python instalado, pode usá-lo.
user30184

Respostas:

4

GDAL é na verdade um conjunto de itens escritos em C. Como tal, ele precisa ser compilado antes da instalação, e o Windows não vem com um compilador C. Como tal, a sua aposta mais fácil é baixar e instalar binários pré-compilados da biblioteca. O local mais fácil para obter binários é de Christoph Gholke, que oferece um pacote da biblioteca GDAL completa, bem como as ligações do Python.

Por fim, se você quiser brincar com modificadores de rasters no Python, recomendo fortemente a instalação rasterio(binários também disponíveis no Gholke ), que é um wrapper muito mais agradável em torno do GDAL e pode ser muito mais fácil de usar.

om_henners
fonte
Olá, obrigado por reservar um tempo para responder. Analisarei sua resposta amanhã, está ficando tarde aqui. Felicidades!
Hans Roelofsen 26/03
Como a instalação gdal saberia onde eu instalei os binários?
Kkolstvo 19/07