• 安装准备的环境:
名称 类型与版本 软件连接
服务器 linux-centos7.5  
jdk 1.8.0_25  
ant 1.9.14 http://mirror.bit.edu.cn/apache//ant/binaries/apache-ant-1.9.14-bin.tar.gz
pcre 8.43 https://jaist.dl.sourceforge.net/project/pcre/pcre/8.43/pcre-8.43.tar.gz
swig  2.0.9 https://excellmedia.dl.sourceforge.net/project/swig/swig/swig-2.0.9/swig-2.0.9.tar.gz
proj 6.0.0 http://download.osgeo.org/proj/proj-6.0.0.tar.gz
geos 3.7.2 http://trac.osgeo.org/geos
gdal 3.0.0 https://github.com/OSGeo/gdal/releases
  • 安装流程

    • 创建文件夹将上述安装包上传到服务器

      • mkdir /export/software/ -p
        cd /export/software/
    • 安装gcc-c++环境
      • # 首先查看当前服务器中是否存在gcc环境
        cd /usr/bin
        # 如果有gcc,g++,则存在,如果没有,用下面命令安装
        yum install -y gcc-c++
    • 安装jdk
      • # 下载解压即可
        将jAVA_HOME PATH CLASSPATH配置全,注意CLASSPATH前面有.:
        配置环境变量:
        vim /etc/profile #JAVA_HOME
        export JAVA_HOME=/home/console/jdk1..0_111
        export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
        export PATH=$JAVA_HOME/bin:$PATH 修改之后保存
        注意source /etc/profile
    • 安装ant
      • # 下载解压即可
        tar -zxvf apache-ant-1.9.-bin.tar.gz -C /home/gdal/
        配置环境变量:
        vim /etc/profile #ANT_HOME
        export ANT_HOME=/home/gdal/apache-ant-1.9.
        export PATH=$PATH:$ANT_HOME/bin 修改之后保存
        注意source /etc/profile
        ant -version 测试ant是否生效
    • 安装pcre
      • # 解压后进入根目录进行
        tar -zxvf pcre-8.43.tar.gz -C /home/gdal/
        ./configure --enable-utf8 (如果没有gcc-c++可能会编译失败)
        make
        make check
        make install
    • 安装swig
      • # 解压后进入根目录进行
        tar -zxvf swig-2.0..tar.gz -C /home/gdal/
        mv swig-2.0. swig-2.0.9_Install
        再次在swig中进行
        cd swig-2.0.9_Install
        ./configure --prefix=/home/gdal/swig-2.0.
        make && make install
        配置环境变量:
        vim /etc/profile #swig
        export SWIG_HOME=/home/gdal/swig-2.0.
        export PATH=$JAVA_HOME/bin:$SWIG_HOME/bin:$PATH 修改之后保存
        注意source /etc/profile
        swig -version 测试swig是否生效
    • 安装proj(默认路径)
      • # 如果出现 no package for sqlite3。执行下面的操作。(可以先执行安装一下,避免出现错误)
        yum install -y sqlite-devel(本地yum即可安装)
        # 解压后将进入到proj-6.0.
        tar -zxvf proj-6.0..tar.gz -C /home/gdal/
        ./configure
        make && make install
    • 安装geos(默认路径)
      • yum -y install bzip2(如果有可以不用安装)
        tar -jxvf geos-3.7..tar.bz2 -C /home/gdal/
        # 解压安装
        ./configure
        make && make install
    • 安装gdal
      • # 5步骤和6步骤均是gdal本身依赖库,所以在安装gdal之前需要配置动态库让gdal能够找到。
        cd /etc/ld.so.conf.d/
        touch local.conf
        echo "/usr/local/lib" > local.conf # 通过ldconfig -v可以查看动态库连接信息:
        # 在列表中能够找到这些就可以了 /usr/local/lib:
        libgdalalljni.so. -> libgdalalljni.so
        libgdal.so. -> libgdal.so.20.5.
        libgeos_c.so. -> libgeos_c.so.1.11.
        libgeos-3.7..so -> libgeos.so
        libproj.so. -> libproj.so.15.0.
        libpcrecpp.so. -> libpcrecpp.so.0.0.
        libpcreposix.so. -> libpcreposix.so.0.0.
        libpcre.so. -> libpcre.so.1.2. tar -zxvf gdal-3.0..tar.gz -C /home/gdal/
        # 然后进行gdal的安装
        ./configure --with-static-proj4=/export/servers/gdal/proj-6.0. --with-java=$JAVA_HOME
        # 上面步骤如果执行完在最后的信息中如果有
        GEOS support = yes字样
        # 则表示成功,继续执行下面的步骤。
        make && make install(时间可能会比较长) # 如果需要使用gdal进行java的转换需要修改swig对应的文件
        修改文件:gdal根目录/swig/java/java.opt,添加JAVA_HOME的值为java的根目录。
        vim /home/gdal/gdal-3.0./swig/java/java.opt
        将 JAVA_HOME=/home/console/jdk1..0_111 添加到文件最后
        # 在路径:gdal根目录/swig/java中执行make && make install # 把gdal根目录/swig/java中生成的gdal.jar文件复制到$JAVA_HOME/jre/lib/ext下
        cp gdal.jar /home/console/jdk1..0_111/jre/lib/ext/
        # 把.so、.lo、.o、.la、*.a复制到自己方便的文件夹下,一般是$JAVA_HOME/jre/lib/amd64/server
        cp *.so *.lo *.o *.la *.a /home/console/jdk1..0_111/jre/lib/amd64/server/
        然后在/etc/profile中添加
        export LD_LIBRARY_PATH=.:$JAVA_HOME/jre/lib/amd64/server # 最后记得source /etc/profile文件
    • 安装注意

      • 安装swig如果已经提前安装了pcre的话,还是出现找不到,则需要添加

        ​ ./configure --with-pcre-prefix=/usr/lib64

      • ant,java,swig都可以通过-version查看是否安装好。

      • 安装完成后可以通过gdal目录中swig/java/app中的示例测试。也可以通过gdalinfo - -version查看是否安装成功。

      • 如果输入gdalinfo --version的时候出现动态库相关的内容报错,ldconfig -v再重新查询一下即可,这样的话应该会有动态库后面显示(改变),可能是动态库正在设置,等到(改变)字样消失即可。

      • 简单安装swig:yum install -y swig(java在linux上通过swig来调用GDAL)

      • 简单安装java ant:yum -y install ant(编译时需要)

      • 涉及到的连接

    

    至此,gdal安装完成

centos7.5安装gdal编译环境的更多相关文章

  1. CentOS离线安装GCC编译环境

    gcc编译环境rpm下载 安装相关的rpm包,具体版本可能随时间变化而变化,可以去以下地址下载: 重庆大学镜像:http://b.mirrors.lanunion.org/CentOS/中国科学技术大 ...

  2. CentOS7.0 安装JAVA周围环境

    CentOS7.0 安装JAVA周围环境  安装JDK 1.配置JDK环境变量 把下载好的JDK(jdk-7u75-linux-x64.gz)文件上传到 Reg: /home/p2pweb/java/ ...

  3. 安装maven编译环境

    安装maven编译环境 1.默认已经装好yum并配置好yum源(推荐使用163yum源) 2.安装JDK 3.安装相关依赖环境(root用户登陆) yum install -y cmake lzo-d ...

  4. WebStorm 8.0安装LESS编译环境的教程

    WebStorm是一个非常棒的Web前端开发编辑器,被程序猿们成为“最智能的JavaScript IDE”.对HTML5.Bootstrap框架.Node.js等都有完美支持.目前最新版本为WebSt ...

  5. Linux本地yum源配置以及使用yum源安装gcc编译环境

    本文档是图文安装本地yum源的教程,以安装gcc编译环境为例. 适用范围:所有的cetos,红帽,fedroa版本 适用人群:有一点linux基础的小白 范例系统版本:CentOS Linux rel ...

  6. 在Ubuntu安装go编译环境

    在Ubuntu安装go编译环境 好记性不如烂笔头,所以趁热打铁记录下golang编译环境的安装过程. 首先下载一些依赖包: sudo apt-get install bison ed gawk gcc ...

  7. RedHat 5下安装gcc编译环境的具体步骤

    RedHat 5下安装gcc编译环境的具体步骤 在RHEL5系统中默认不安装linux系统中的开发编译环境(gcc),此软件包安装时依赖其他包较多 在以前使用RHEL4时可以通过如下命令安装: rpm ...

  8. Linux工作环境:CentOS7最小安装+Xfce桌面环境

    ref: https://blog.csdn.net/smstong/article/details/44802989 3.1 执行CentOS7 最小安装去官网下载CentOS-7.0-1406-x ...

  9. centos7.0 安装LNMP运行环境

    LNMP作为php流行的运行环境,而最近需要搭建一个内部的php论坛.记录下LNMP的安装: 1.安装mysql 请参考:centos7 安装mysql5.7.11注意事项 2.安装php yum i ...

随机推荐

  1. SQL注入之常用工具sqlmap

    通常来说,验证一个页面是否存在注入漏洞比较简单,而要获取数据,扩大权限,则要输入很复杂的SQL语句,有时候我们还会对大量的URL进行测试,这时就需要用到工具来帮助我们进行注入了. 目前流行的注入工具有 ...

  2. 入门大数据---Hbase协处理器详解

    一.简述 Hbase 作为列族数据库最经常被人诟病的特性包括:无法轻易建立"二级索引",难以执 行求和.计数.排序等操作.比如,在旧版本的(<0.92)Hbase 中,统计数 ...

  3. 搭建hadoop伪集群

    基础设置:jdk.ssh. 1.操作系统.环境.网络.必须软件 2.关闭防火墙 3.设置hosts映射 4.时间同步 5.安装jdk 6.设置ssh免秘钥部署配置:初始化运行:命令行使用:

  4. JDK8--03:lambda表达式语法

    对于lambda表达式的基础语法,一个是要了解lambda表达式的基础语法,另外一个是需要了解函数式接口 一.lambda表达式基础语法描述 java8中引入了新的操作符  ->  ,可以称为l ...

  5. 语言模型 N-gram 与其平滑方法推导

    N-gram N-gram 作为一个名词表示的是一个给定文本/音频样本中有n项(音素,音节,字母,单词)的一个连续序列. 数学表达 N-gram 模型表示的是当前这个 word \(w_i\) 依赖于 ...

  6. JQ三种提示框:提示信息框、确认框、输入文本框

    浏览器的三种提示框: alert()提示信息框 confirm()提示确认框 prompt()提示输入文本框 1.alert()提示信息框 效果: 实现代码: <script> alert ...

  7. 小白写了一堆if-else,大神实在看不下去了,竟然用策略模式直接摆平了

    这里涉及到一个关键词:策略模式,那么到底什么是策略模式呢?本文就来好好给大家讲讲策略模式,大家可以带着如下几个问题来阅读本文:   1. 如何通过策略模式优化业务逻辑代码(可以根据自己从事的工作思考) ...

  8. 为什么总是无法访问VMware内的web服务?

    除了防火墙的设置,很可能时因为你的Web服务监听的时127.0.0.1地址,构成了本机回环,只能本机访问的原因. 启动服务的时候可以尝试指定hostname为0.0.0.0或者你想监听的IP地址. [ ...

  9. Python必须知道的异常处理

    异常处理 把可能会发生的错误,提前在代码里进行捕捉(监测) try : code except Exception: 出错后要执行的代码 下面是常见的异常: attributeError 试图访问一个 ...

  10. 每日一题 - 剑指 Offer 42. 连续子数组的最大和

    题目信息 时间: 2019-06-30 题目链接:Leetcode tag: 动态规划 难易程度:简单 题目描述: 输入一个整型数组,数组里有正数也有负数.数组中的一个或连续多个整数组成一个子数组.求 ...