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..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(编译时需要)
涉及到的连接
- 安装swig如果已经提前安装了pcre的话,还是出现找不到,则需要添加
- 创建文件夹将上述安装包上传到服务器
- 最终环境变量里面的内容

至此,gdal安装完成
centos7.5安装gdal编译环境的更多相关文章
- CentOS离线安装GCC编译环境
gcc编译环境rpm下载 安装相关的rpm包,具体版本可能随时间变化而变化,可以去以下地址下载: 重庆大学镜像:http://b.mirrors.lanunion.org/CentOS/中国科学技术大 ...
- CentOS7.0 安装JAVA周围环境
CentOS7.0 安装JAVA周围环境 安装JDK 1.配置JDK环境变量 把下载好的JDK(jdk-7u75-linux-x64.gz)文件上传到 Reg: /home/p2pweb/java/ ...
- 安装maven编译环境
安装maven编译环境 1.默认已经装好yum并配置好yum源(推荐使用163yum源) 2.安装JDK 3.安装相关依赖环境(root用户登陆) yum install -y cmake lzo-d ...
- WebStorm 8.0安装LESS编译环境的教程
WebStorm是一个非常棒的Web前端开发编辑器,被程序猿们成为“最智能的JavaScript IDE”.对HTML5.Bootstrap框架.Node.js等都有完美支持.目前最新版本为WebSt ...
- Linux本地yum源配置以及使用yum源安装gcc编译环境
本文档是图文安装本地yum源的教程,以安装gcc编译环境为例. 适用范围:所有的cetos,红帽,fedroa版本 适用人群:有一点linux基础的小白 范例系统版本:CentOS Linux rel ...
- 在Ubuntu安装go编译环境
在Ubuntu安装go编译环境 好记性不如烂笔头,所以趁热打铁记录下golang编译环境的安装过程. 首先下载一些依赖包: sudo apt-get install bison ed gawk gcc ...
- RedHat 5下安装gcc编译环境的具体步骤
RedHat 5下安装gcc编译环境的具体步骤 在RHEL5系统中默认不安装linux系统中的开发编译环境(gcc),此软件包安装时依赖其他包较多 在以前使用RHEL4时可以通过如下命令安装: rpm ...
- Linux工作环境:CentOS7最小安装+Xfce桌面环境
ref: https://blog.csdn.net/smstong/article/details/44802989 3.1 执行CentOS7 最小安装去官网下载CentOS-7.0-1406-x ...
- centos7.0 安装LNMP运行环境
LNMP作为php流行的运行环境,而最近需要搭建一个内部的php论坛.记录下LNMP的安装: 1.安装mysql 请参考:centos7 安装mysql5.7.11注意事项 2.安装php yum i ...
随机推荐
- web如何测试
当我们负责web测试的时候,先了解B/S架构,然后分析如何开始执行测试,一般步骤:从功能测试,兼容测试,安全测试. 功能测试: 一.链接测试,链接是web应用系统的一个很重要的特征,主要是用于页面之间 ...
- Flutter —快速开发的IDE快捷方式
老孟导读:这是老孟翻译的精品文章,文章所有权归原作者所有. 欢迎加入老孟Flutter交流群,每周翻译2-3篇付费文章,精彩不容错过. 原文地址:https://medium.com/flutter- ...
- java面试题——对于多态你是怎么理解的呢?不一样的角度,带你重新看java
java面试的时候经常会被问到一个问题,那就是java三大特性:继承,封装和多态.那么这三者的含义究竟是什么你真的清楚吗?我看网上大多都是人云亦云.所以我想把我的想法记录下来供大家参考-今天先聊一个, ...
- CSS3 target 选择器_:target伪类的使用
target作为目标伪类选择器,是css3中的新特性之一,目前已经支持所有主流浏览器,除了 IE8 及更早的版本.target伪类的主要是用于匹配文档中uri中某个标志符的目标元素,具体来说,uri中 ...
- CSS如何将图像转换为模糊图像?
在CSS中,可以使用filter属性来模糊处理图像:filter属性用于将图像转换为模糊图像.该属性主要用于设置图像的视觉效果. 语法: filter: blur() 属性值: ● blur():给图 ...
- iOS应用千万级架构:MVVM框架
业务模块内的MVC和MVVM架构 目前,唯品会中MVC和MVVM架构并存,后期会偏重于MVVM架构的使用. MVC架构 Model:程序中要操纵的实际对象的抽象,为Controller提供经过抽象的业 ...
- Django---drf第一天---作业
1 图书的5个接口写完(使用序列化组件) urls.py from django.contrib import admin from django.urls import path, re_path ...
- Mysql 常用语句实战(2)
前置 sql 语句 用来创建表.插入数据 SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- ...
- springboot freemark linux 找不到ftl文件
文件路径: 再idea中这样写是可以正常导出文件,但是 打成jar放到linux上就找不到文件了. String templatePath =WordUtils.class.getResource(& ...
- day23 作业
day23 作业 目录 day23 作业 1.把登录与注册的密码都换成密文形式 2.文件完整性校验(考虑大文件) 3.注册功能改用json实现 4.项目的配置文件采用configparser进行解析 ...