48 votes

installation de python GDAL 2.1 sur Ubuntu 16.04

Voici ma séquence de lignes de commande en essayant d'installer gdal2.1 dans une machine virtuelle UBUNTU. Ma machine virtuelle est une UBUNTU 16.04 LTS (64bit). J'aurais besoin de gdal2.1 et surtout des bindings Python pour travailler avec lui dans python. La version de Python actuellement installée est 2.7.11+ et j'ai installé numpy car je sais qu'il est nécessaire pour GDAL.

Instructions que j'ai trouvées dans la page Pypi de GDAL2.1 :

   antonio19812@antonio19812-VirtualBox:~$ sudo apt-get install libgdal1i

   libgdal1i is already the newest version (1.11.3+dfsg-3build2).

   antonio19812@antonio19812-VirtualBox:~$ sudo apt-get install libgdal1-dev

   libgdal1-dev is already the newest version (1.11.3+dfsg-3build2).

   antonio19812@antonio19812-VirtualBox:~$ sudo pip install gdal

   Collecting gdal Downloading GDAL-2.1.0.tar.gz (619kB) 100%   || 624kB 247kB/s

   Installing collected packages: gdal

  Running setup.py install for gdal ... error

  Complete output from command /usr/bin/python -u -c "import setuptools, 

tokenize;file='/tmp/pip-build-_sHDUY/gdal/setup.py';

exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n',

'\n'), file, 'exec'))" install --record /tmp/pip-eOB65J-record/install-

record.txt --single-version-externally-managed --compile:

running install

running build

running build_py

creating build

creating build/lib.linux-x86_64-2.7

copying gdal.py -> build/lib.linux-x86_64-2.7

copying ogr.py -> build/lib.linux-x86_64-2.7

copying osr.py -> build/lib.linux-x86_64-2.7

copying gdalconst.py -> build/lib.linux-x86_64-2.7

copying gdalnumeric.py -> build/lib.linux-x86_64-2.7

creating build/lib.linux-x86_64-2.7/osgeo

copying osgeo/gdal.py -> build/lib.linux-x86_64-2.7/osgeo

copying osgeo/gdalconst.py -> build/lib.linux-x86_64-2.7/osgeo

copying osgeo/osr.py -> build/lib.linux-x86_64-2.7/osgeo

copying osgeo/__init__.py -> build/lib.linux-x86_64-2.7/osgeo

copying osgeo/ogr.py -> build/lib.linux-x86_64-2.7/osgeo

copying osgeo/gdal_array.py -> build/lib.linux-x86_64-2.7/osgeo

copying osgeo/gnm.py -> build/lib.linux-x86_64-2.7/osgeo

copying osgeo/gdalnumeric.py -> build/lib.linux-x86_64-2.7/osgeo

running build_ext

building 'osgeo._gdal' extension

creating build/temp.linux-x86_64-2.7

creating build/temp.linux-x86_64-2.7/extensions

x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I../../port -I../../gcore -I../../alg -I../../ogr/ -I../../ogr/ogrsf_frmts -I../../gnm -I../../apps -I/usr/include/python2.7 -I/usr/local/lib/python2.7/dist-packages/numpy/core/include -I/usr/include -c extensions/gdal_wrap.cpp -o build/temp.linux-x86_64-2.7/extensions/gdal_wrap.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
extensions/gdal_wrap.cpp:3085:22: fatal error: cpl_port.h: File o directory non 

esistente

compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

----------------------------------------

Command "/usr/bin/python -u -c "import setuptools, tokenize;file='/tmp/pip-build-_sHDUY/gdal/setup.py';exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /tmp/pip-eOB65J-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-_sHDUY/gdal/

C'est ce que j'ai obtenu. Considérez que la VM n'a pas d'autres logiciels ou paquets installés. J'espère que vous pourrez m'aider, l'utilisation de GDAL2.1 serait si importante

J'ai essayé de demander des suggestions dans la section SIG mais je n'ai pas eu de réponse jusqu'à présent.

91voto

Akhorus Points 1457

Ce qui a marché pour moi, c'est ça : https://gis.stackexchange.com/a/193828/66527

Ci-dessous, je copie cette réponse :

Vous pouvez télécharger GDAL 2.1 pour Windows à partir du site suivant Internes SIG . Il existe un installateur et une version portable qui ne nécessite pas d'installation.

GDAL 2.1 est disponible pour Ubuntu 16.04 à partir de l'adresse suivante PPA UbuntuGIS-Stable

sudo add-apt-repository -y ppa:ubuntugis/ppa
sudo apt update 
sudo apt upgrade # if you already have gdal 1.11 installed 
sudo apt install gdal-bin python-gdal python3-gdal # if you don't have gdal 1.11 already installed 

Remarque Ubuntu 16.04 est livré avec python 3.5 mais utilise python 2.7 par défaut.

3 votes

Fonctionne également pour Ubuntu 14.04.

1 votes

GDAL 2.1 est maintenant disponible dans ubuntugis-stable, donc je pense que vous pouvez changer la première ligne sudo add-apt-repository ppa:ubuntugis/ppa

1 votes

@bsm pouvez-vous s'il vous plaît éditer la réponse directement ? Pour l'instant, je n'ai pas de contexte où l'essayer.

13voto

Knud Larsen Points 3549

"python-gdal" version 2.1.0 nécessite gdal version 2.1.0 . Donc l'installation de " libgdal1 "La version 1.11.3 n'est pas suffisante. Obtenir gdal-2.1.0 : http://download.osgeo.org/gdal/2.1.0/gdal-2.1.0.tar.gz

Et les ~43 dépendances : $ sudo apt-get build-dep gdal

Construction et installation de gdal-2.1.0 et des liaisons Python :

$ cd gdal-2.1.0/
$ ./configure --prefix=/usr/
$ make
$ sudo make install
$ cd swig/python/
$ sudo python setup.py install

... Aucun problème ici, j'utilise Ubuntu 16.04 - 64bits.


0 votes

Bizarrement, je reçois une erreur - gdal-2.1.0/.libs/libgdal.so: undefined reference to `kmldom::SerializePretty(boost::intrusive_ptr<kmldom::Elemen‌​t> const&)' - notez le backtick avant kmldom mais un guillemet simple après const&) . Auparavant, j'ai eu deux erreurs, car libgdal.so nécessaire png_set_longjmp_fn() qui exige libpng 1.4+ - l'installation de base semblait être libpng1.2.54, et quand j'ai installé libpng16-dev le second make L'erreur a disparu.

2voto

Oz123 Points 4677

Avez-vous installé python-dev ?

Avant d'installer quoi que ce soit à partir des sources sous Ubuntu, je vous suggère de vous occuper des dépendances de construction.

sudo apt-get build-dep python-gdal

Ensuite, essayez d'exécuter l'installation.

1voto

suni k Points 11
sudo add-apt-repository ppa:ubuntugis/ppa && sudo apt-get update

sudo apt-get update

sudo apt-get install gdal-bin

sudo apt-get install libgdal-dev

export CPLUS_INCLUDE_PATH=/usr/include/gdal

export C_INCLUDE_PATH=/usr/include/gdal

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X