¿Instalar GDAL en Python en Windows 7?

9

Tengo problemas para instalar la biblioteca gdal para python. Utilizo Windows 7 y tengo WinPython 2.7.9.2 que ejecuta Python 2.7.9. Me gustaría usar gdal + Python para la manipulación de ráster.

He leído que PIP es la forma preferida para instalar paquetes en Windows y que está lleno de Python 2.7.9. He editado mi variable de entorno PATH para incluir pip y python:

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

así que ahora puedo ejecutar python y pip directamente desde el símbolo del sistema.

El error aparece cuando escribo

c:\>pip install gdal

lo que da:

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

Entonces, aparentemente falta algo llamado 'cpl_port.h'. Esto también se describe en esta pregunta, donde se sugiere que no se pueden encontrar los archivos de encabezado. Sin embargo, la solución provista en ese hilo está basada en LINUX e incompatible con mi Windows.

No estoy muy seguro de cómo proceder desde aquí, ¿debería renunciar a PIP e intentar otra ruta?

Verifiqué que PIP funciona instalando algunos otros paquetes, por lo que el problema parece ser con gdal.

Hans Roelofsen
fuente
Un flujo de trabajo simple es instalar Python desde el instalador msi de Windows y enlaces GDAL + python también desde instaladores msi que se pueden descargar desde gisinternals.com.
user30184
Hola! Gracias por tu comentario. ¿Puedes elaborar un poco? Escucho mucho el término 'enlaces', pero no tengo idea de lo que quieres decir allí. Del mismo modo, ¿qué es el instalador MSI? Tenga en cuenta que ya tengo Python instalado y prefiero no instalarlo nuevamente si puedo evitarlo.
Hans Roelofsen
MSI significa instalador de Microsoft. Para el usuario, es un archivo que termina con .msi al que hace doble clic y luego comienza a instalarse. Con los enlaces puede llamar al código GDAL que está escrito en C / C ++ desde Python files.opensuse.org/opensuse/en/e/eb/… . Si ya tiene Python instalado, puede usarlo.
user30184

Respuestas:

4

GDAL es en realidad un conjunto de toos escritos en C. Como tal, debe compilarse antes de la instalación, y Windows no viene con un compilador de C. Como tal, su apuesta más fácil es descargar e instalar binarios precompilados de la biblioteca. El lugar más fácil para obtener binarios es Christoph Gholke, que ofrece un paquete de la biblioteca GDAL completa, así como los enlaces de Python.

Finalmente, si está buscando jugar con la modificación de rásteres en Python, recomiendo encarecidamente la instalación rasterio(binarios disponibles de Gholke también), que es un envoltorio mucho más agradable alrededor de GDAL y podría ser mucho más fácil de usar.

om_henners
fuente
Hola, gracias por tomarte el tiempo de responder. Buscaré tu respuesta mañana, se está haciendo tarde aquí. ¡Salud!
Hans Roelofsen
¿Cómo sabría la instalación de gdal dónde instalé los binarios?
Školstvo