centos7.5安装gdal编译环境

Posted lxyuuuuu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7.5安装gdal编译环境相关的知识,希望对你有一定的参考价值。

  • 安装准备的环境:
名称 类型与版本 软件连接
服务器 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.8.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.14-bin.tar.gz -C /home/gdal/
      配置环境变量:
      vim /etc/profile
      
      #ANT_HOME
      export ANT_HOME=/home/gdal/apache-ant-1.9.14
      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.9.tar.gz -C /home/gdal/
      mv swig-2.0.9 swig-2.0.9_Install
      再次在swig中进行
      cd swig-2.0.9_Install
      ./configure --prefix=/home/gdal/swig-2.0.9
      make && make install
      配置环境变量:
      vim /etc/profile
      
      #swig
      export SWIG_HOME=/home/gdal/swig-2.0.9
      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.0
      tar -zxvf proj-6.0.0.tar.gz -C /home/gdal/
      ./configure
      make && make install
  • 安装geos(默认路径)
    • yum -y install bzip2(如果有可以不用安装)
      tar -jxvf geos-3.7.2.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.20 -> libgdalalljni.so
          libgdal.so.20 -> libgdal.so.20.5.1
          libgeos_c.so.1 -> libgeos_c.so.1.11.1
          libgeos-3.7.1.so -> libgeos.so
          libproj.so.15 -> libproj.so.15.0.0
          libpcrecpp.so.0 -> libpcrecpp.so.0.0.1
          libpcreposix.so.0 -> libpcreposix.so.0.0.6
          libpcre.so.1 -> libpcre.so.1.2.11
          
      tar -zxvf gdal-3.0.0.tar.gz -C /home/gdal/
      # 然后进行gdal的安装
          ./configure --with-static-proj4=/export/servers/gdal/proj-6.0.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.0/swig/java/java.opt
      将 JAVA_HOME=/home/console/jdk1.8.0_111 添加到文件最后
      # 在路径:gdal根目录/swig/java中执行make && make install
      
      # 把gdal根目录/swig/java中生成的gdal.jar文件复制到$JAVA_HOME/jre/lib/ext下
      cp gdal.jar /home/console/jdk1.8.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.8.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编译环境的主要内容,如果未能解决你的问题,请参考以下文章

GDAL在windows,c++环境如何编译安装支持PostGIS格式?

GEOS/GDAL 交叉编译ARM64-linux版本

windows环境下python和gdal绑定方法

CentOS7.4,anaconda3,python3.6,tensorflow环境下gdal的编译和问题解决

macOS下GDAL Java开发环境搭建

gdal java环境配置