在Ubuntu 16.04上安装python GDAL 2.1

时间:2016-05-18 08:27:47

标签: python linux gdal ubuntu-16.04

尝试在UBUNTU虚拟机中安装gdal2.1时,这将是我的命令行序列。我的虚拟机是UBUNTU 16.04 LTS(64位)我需要gdal2.1,特别是Python绑定在python中使用它。当前安装的python版本是2.7.11+,我安装了numpy,因为我知道GDAL是必要的。现在命令行带有

我在GDAL2.1的Pypi页面中找到的说明:

   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/

这是我获得的。考虑到VM没有安装其他软件或软件包。我希望你能帮助我,使用GDAL2.1会非常重要..

我试图在GIS部分提出一些建议但到目前为止我没有答案

4 个答案:

答案 0 :(得分:75)

对我有用的是:https://gis.stackexchange.com/a/193828/66527

下面,我复制一下答案:

您可以从GIS Internals下载适用于Windows的GDAL 2.1。有一个安装程序和便携版本,不需要安装。

GDAL 2.1适用于UbuntuGIS-Stable PPA

的Ubuntu 16.04
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 

注意Ubuntu 16.04附带python 3.5,但使用python 2.7作为默认值

答案 1 :(得分:12)

“python-gdal”版本2.1.0需要gdal版本2.1.0。因此,安装“libgdal1”版本1.11.3是不够的。获取gdal-2.1.0:http://download.osgeo.org/gdal/2.1.0/gdal-2.1.0.tar.gz

~43依赖项:$ sudo apt-get build-dep gdal

构建和安装gdal-2.1.0和Python绑定:

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

......这里没有问题,使用Ubuntu 16.04 - 64位。

答案 2 :(得分:2)

您安装了python-dev吗?

在Ubuntu中从源代码安装任何东西之前,我建议你处理构建依赖项。

sudo apt-get build-dep python-gdal

尝试并运行安装。

答案 3 :(得分:0)

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