安装过程:

python包是从C++包中编译出来的,所以需要将源码下载进行编译安装

1、GDAL中的矢量数据处理OGR依赖于Geos,在安装GDAL之前要安装Geos

Geos的下载地址:http://download.osgeo.org/geos/geos-3.5.0.tar.bz2

cd geos-3.5.0
./configure --prefix=/opt/source/geos-3.5.0/build --enable-python
make
make install
./build/bin/geos-config --version

  

2、GDAL下载:在官网下载GDAL安装包

http://download.osgeo.org/gdal/2.4.1/gdal-2.4.1.tar.gz,将下载的安装包解压

进入解压后的文件夹中,打开终端:

sudo ./configure --with-python --with-geos=geos-config的路径
sudo make
sudo make install

注:安装失败重新编译之前,使用make clean清除一下上次的内容。

3. 然后进入到swig/python目录下
sudo python setup.py build
sudo python setup.py install

4、在python环境下:

import osgeo

验证是否安装成功。

出现的问题

问题1:extensions/gdal_wrap.cpp:173:21: fatal error: Python.h: 没有那个文件或目录

解决方法是安装python-dev,这是Python的头文件和静态库包:

sudo apt-get install python-dev

  

Ubuntu中安装gdal python版本的更多相关文章

  1. 安装的 Python 版本太多互相干扰?pyenv 建议了解一下。

    写在之前 我们都知道现在的 Python 有 Python2 和 Python3,但是由于各种乱七八糟的原因导致这俩哥们要长期共存,荣辱与共,尴尬的是这哥俩的差异还比较大,在很多时候我们可能要同时用到 ...

  2. python中在ubuntu中安装虚拟环境及环境配置

    python中在ubuntu中安装虚拟环境及环境配置 1.升级python包管理工具pip pip install --upgrade pip 备注:当你想升级一个包的时候 `pip install ...

  3. windows 如何将安装Anaconda之前已经安装的python版本(中已安装的库)移动到 Anaconda中

    题目]如何将安装Anaconda之前已经安装的python版本(中已安装的库)移动到 Anaconda中 一.概述 之前安装tensorflow的安装了anaconda并用它进行安装,anaconda ...

  4. 在kali中安装两个版本的python

    在kali中安装两个版本的python 在kali中已经预装了两个版本的python,但是没有装pip(>︿<). 这时使用python或者python3表示python3:使用pytho ...

  5. 在 ubuntu 中安装 python3.5、 tornado、 pymysql

    一.在 ubuntu 中安装 python3.5 1.首先,在系统中是自带python2.7的.不要卸载,因为一些系统的东西是需要这个的.python2.7和python3.5是可以共存的. 命令如下 ...

  6. 在 ubuntu 中安装 python3.5 tornado pymysql

    一.在 ubuntu 中安装 python3.5 1.首先,在系统中是自带python2.7的.不要卸载,因为一些系统的东西是需要这个的.python2.7和python3.5是可以共存的. 命令如下 ...

  7. 【转】在Ubuntu中安装HBase

    原博客出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/ 感谢! Posted: Apr 3, 2014 Tags: Hado ...

  8. ubuntu中安装python3和pip

    python3: 在ubuntu的包中,python的二代和三代版本的命名:二代:python,三代:python3 安装python3: sudo apt install python3 同理:pi ...

  9. 在Ubuntu中安装OpenCV-Python | 三

    在本教程中,我们将学习在Ubuntu System中设置OpenCV-Python.以下步骤针对Ubuntu 16.04和18.04(均为64位)进行了测试. 可以通过两种方式在Ubuntu中安装Op ...

随机推荐

  1. JavaScript数组的2种定义方式

    JavaScript中没有数组类型,JavaScript中数组是以内置对象的形式存在的. 数组是存储多个值的集合(仓库). JS中定义数组的2种方式: 1.使用new Array()构造函数定义数组 ...

  2. npm淘宝镜像配置

    npm config set registry https://registry.npm.taobao.org

  3. HTML+css 小组件

    1.三角 代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <t ...

  4. 用C++Builder在Windows开始按钮上绘图制作方法

    熟悉Windows操作系统的软件设计人员知道,在Win95/98/NT/2000中有一任务栏(Task Bar)程序,路径为:C:\WINDOWS\SYSTEM\SYSTRAY.EXE(假设你的Win ...

  5. PDO连续query()失败问题

    设置了非缓冲查询(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY)以后,连续query会导致下一次结果为false $conn = "mysql:host=127.0. ...

  6. linux mysql备份shell

    #!/bin/bash # Shell script to backup MySql database # Author: Henry he # Last updated: -- # crontab ...

  7. LintCode_389 判断数独是否合法

    题目 请判定一个数独是否有效. 该数独可能只填充了部分数字,其中缺少的数字用 . 表示. 注意事项 一个合法的数独(仅部分填充)并不一定是可解的.我们仅需使填充的空格有效即可. 说明 什么是 数独? ...

  8. Android之AbsoluteLayout(绝对布局)

    1.属性简介 为了适配不同机型,绝对布局使用很少! android:layout_x="50dp" android:layout_y="100dp"也只有在Ab ...

  9. maven错误:is duplicated in the reactor

    code-instrument-java git:(masterv2-2.2.2-solr) ✗ mvn clean package -Dmaven.test.skip=true [INFO] Sca ...

  10. PHP-property_exists()函数

    直接看代码 <?php header('content-type:text/html;charset=utf-8'); //property_exists说明 class A{ public $ ...