Falta el archivo de cabecera del paquete GDAL de Python cuando se instala a través de pip

Estoy intentando instalar gdal desde pip pip install gdal dentro de un entorno virtual (Ubuntu). Falla porque no puede encontrar cpl_port.h

 extensions/gdal_wrap.cpp:2853:22: fatal error: cpl_port.h: No such file or directory comstacktion terminated 

Sin embargo, GDAL está instalado correctamente y el archivo de encabezado se encuentra en /usr/include/gdal/cpl_port.h . ¿Hay alguna variable de entorno para GDAL que deba configurarse para que pip encuentre los archivos de encabezado?

Como se sugiere en el otro subproceso , exportar algunas variables de shell antes de ejecutar pip funcionó perfectamente. Se puede encontrar una ruta para *_INCLUDE_PATH con gdal-config --cflags .

 # GDAL library must have been installed sudo apt-get install libgdal-dev # Set up pip and/or virtualenv stuff ... # Now install Python binding for GDAL export CPLUS_INCLUDE_PATH=/usr/include/gdal export C_INCLUDE_PATH=/usr/include/gdal pip install GDAL 

La respuesta de Tomyun funcionó para mí, con la condición de que debe asegurarse de que la versión de GDAL-dev instalada a través de apt-get coincida con la versión que está instalando pip .

Para Ubuntu 14.04, los comandos son:

 # GDAL library must have been installed sudo apt-get install libgdal-dev # Set up pip and/or virtualenv stuff ... # Now install Python binding for GDAL export CPLUS_INCLUDE_PATH=/usr/include/gdal export C_INCLUDE_PATH=/usr/include/gdal pip3 install GDAL=1.10.0 

Utilizando PIP :

 pip install --no-install GDAL 

Luego cd en ENV / build / GDAL

 python setup.py build_ext --include-dirs=/usr/include/gdal pip install --no-download GDAL 

(Fuente: http://ubuntuforums.org/showthread.php?t=1769445 )

Utilizando Buildout :

 [gdal-bindings] recipe = zc.recipe.egg:custom egg = GDAL==1.9.1 include-dirs = /usr/include/gdal library-dirs = /usr/lib 

También estaba recibiendo este error al realizar una prueba de instalación en un entorno virtual un paquete mío que depende de GDAL. En este caso, la solución es cambiar la dependencia de GDAL a pygdal en el parámetro install_requires en setup.py . Al igual que:

install_requires=['pygdal'],

Esto es lo que funcionó para mí:

Tuve que obtener las últimas versiones de Hearder para instalar gdal 2.2.4 a través de pip:

 sudo apt-add-repository ppa:ubuntugis/ubuntugis-unstable sudo apt update sudo apt install libgdal-dev 

Antes de eso, recibía las extensions/gdal_wrap.cpp:3172:27: fatal error: cpl_vsi_error.h: No such file or directory , incluso cuando se incluye la ruta de “inclusión” correcta para pip.

La instalación del pip (en un virtualenv):

  pip install --global-option=build_ext --global-option="-I/usr/include/gdal" gdal 

tratar de hacer: brew install gdal

después de eso inténtalo de nuevo.