Python paquet GDAL fichier d'en-tête manquant lors de l'installation via pip
j'essaie d'installer gdal à partir de pip pip install gdal
dans un environnement virtuel (Ubuntu). Il échoue parce qu'il ne trouve pas cpl_port.h
extensions/gdal_wrap.cpp:2853:22: fatal error: cpl_port.h: No such file or directory
compilation terminated
cependant GDAL est installé correctement et le fichier d'en-tête est situé à /usr/include/gdal/cpl_port.h
. Y a-t-il une variable d'environnement pour GDAL qui doit être définie pour que pip puisse trouver les fichiers d'en-tête?
6 réponses
comme suggéré dans l'autre fil, exporter quelques variables shell avant d'exécuter pip fonctionnait parfaitement. Un chemin d'accès pour *_INCLUDE_PATH
peut être trouvé avec 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 réponse de Tomyun a fonctionné pour moi, avec la condition que vous devez vous assurer que la version de GDAL-dev installée via apt-get
correspond à la version installée par pip
.
Pour Ubuntu 14.04, les commandes sont:
# 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
en utilisant PIP:
pip install --no-install GDAL
puis cd dans ENV / build / GDAL
python setup.py build_ext --include-dirs=/usr/include/gdal
pip install --no-download GDAL
(Source: http://ubuntuforums.org/showthread.php?t=1769445)
Utiliser Buildout:
[gdal-bindings]
recipe = zc.recipe.egg:custom
egg = GDAL==1.9.1
include-dirs = /usr/include/gdal
library-dirs = /usr/lib
j'ai aussi eu cette erreur en testant l'installation dans un environnement virtuel d'un paquet qui dépend de GDAL. Dans ce cas, la solution est de changer la dépendance au de GDAL
pygdal
dans le install_requires
paramètre setup.py
. Comme ceci:
install_requires=['pygdal'],
C'est ce qui a fonctionné pour moi:
j'ai eu pour obtenir les dernières hearder versions pour l'installation de gdal 2.2.4 par pip:
sudo apt-add-repository ppa:ubuntugis/ubuntugis-unstable
sudo apt update
sudo apt install libgdal-dev
Avant cela, je recevais extensions/gdal_wrap.cpp:3172:27: fatal error: cpl_vsi_error.h: No such file or directory
, même en incluant le bon chemin "include" vers pip.
Le pip de l'installation (dans un virtualenv):
pip install --global-option=build_ext --global-option="-I/usr/include/gdal" gdal
essayez de faire: brew install gdal
après cela, réessayez.