背景:
项目中要对遥感数据进行处理,通过调研要使用gdal处理遥感影像数据,项目现在的开发的语言是Java,部署服务器是Linux CentOS 7.6。gdal需要环境支持,要在服务器提前部署gdal环境。
提示:
开发语言:java、
服务器系统:Linux CentOS 7.6
安装gdal依赖环境
前言
提示:项目中要对遥感数据进行处理,通过调研要使用gdal处理遥感影像数据,项目现在的开发的语言是Java,部署服务器是Linux CentOS 7.6。gdal需要环境支持,要在服务器提前部署gdal环境。
提示:需要的软件安装安装包放在百度网盘,需要自取
安装包下载地址:
链接:https://pan.baidu.com/s/1jImQkaN6-kdL3lNj_NbpWw
提取码:acae
–来自百度网盘超级会员V5的分享
一、安装gcc
检查版本gcc -v(使用默认版本即可)
# gcc -v
显示以下信息表示gcc已安装
如果没有gcc,可使用yum安装最新版本
# yum -y install gcc automake autoconf libtool make
二、安装g++
检查版本 g++ -v(使用默认版本即可)
# g++ -v
显示以下信息表示g++已安装
如果没有g++,可使用yum安装最新版本
# yum install gcc-c++ libstdc++-devel
三、安装Ant
执行以下命令创建目录并安装Ant
d /usr/local/
mkdir gdaljai
cd gdaljai
# 上传ant安装包
rz apache-ant-1.9.16-bin.tar.gz
# 解压
tar -zxvf apache-ant-1.9.16-bin.tar.gz
# 改变权限
chmod 777 apache-ant-1.9.16
# 修改系统环境变量,在文件的最后加上如下两行代码
vi /etc/profile
export ANT_HOME=/usr/local/gdaljai/apache-ant-1.9.16
export PATH=$PATH:$ANT_HOME/bin
# 使环境变量生效
source /etc/profile
# 测试ant是否生效
ant -version
出现如下结果,证明Ant安装成功
四、安装pcre
cd /usr/local/gdaljai
# 上传安装包
rz pcre-8.41.tar.gz
# 解压
tar -zxvf pcre-8.41.tar.gz
cd pcre-8.41
# 编译安装
./configure
make && make install
五、安装swig
cd /usr/local/gdaljai
# 上传安装包
rz swig-3.0.12.tar.gz
# 解压
tar -zxvf swig-3.0.12.tar.gz
cd swig-3.0.12
# 编译安装
./configure
make && make install
六、安装proj6
cd /usr/local/gdaljai
# 上传安装包
rz proj-6.1.0.tar.gz
# 解压
tar -zxvf proj-6.1.0.tar.gz
cd proj-6.1.0
# 编译安装
./configure
make && make install
七、安装geos
cd /usr/local/gdaljai
# 上传安装包
rz geos-3.6.3.tar.bz2
# 解压
tar -xjf geos-3.6.3.tar.bz2
提示:无法正常解压 情况之一可能是没有安装bzip2库
执行该命令安装bzip2库
yum -y install bzip2
cd geos-3.6.3
# 编译安装
./configure
make && make install
八、置动态链接库
让gdal能够找到proj及geos的所在位置。共享文件默认安装在/usr/local/lib位置下,因此可执行如下命令进行配置。
cd /etc/ld.so.conf.d/
touch local.conf
echo “/usr/local/lib” > local.conf
九、安装gdal
cd /usr/local/gdaljai
# 上传安装包
rz gdal-3.0.1.tar.gz
# 解压
tar -zxvf gdal-3.0.1.tar.gz
cd /gdal-3.0.1
# 编译安装 !!!提示:该过程比较耗时,请耐心等待
./configure --with-static-proj4=/usr/local --with-java=$JAVA_HOME
# 编译安装 !!!提示:该过程比较耗时,请耐心等待
make && make install
# 查询jdk安装位置
echo $JAVA_HOME
修改java版配置文件
cd /swig/java
vim java.opt
设置JAVA_HOME=$JAVA_HOME为JDK安装目录
最后执行编译安装,编译成功如下图所示。
make && make install
编译成功,会在/usr/local/gdaljai/swig/java目录下生成gdal依赖包。
十、配置gdal依赖包
- 把gdal根目录/swig/java中生成的gdal.jar文件复制到$JAVA_HOME/jre/lib/ext下
- 把.so、.lo、.o、.la、*.a复制到自己方便的文件夹下,一般是$JAVA_HOME/jre/lib/amd64/server
- 在/etc/profile中添加:
export LD_LIBRARY_PATH=.:$JAVA_HOME/jre/lib/amd64/server
- 文件生效:
source /etc/profile
十一、安装遇到问题
11.1、make proj6可能出现的问题
报错:checking for SQLITE3... configure: error: Package requirements (sqlite3 >= 3.7) were not met:
解决:yum install sqlite-devel
11.2、make gdal可能出现的问题
报错:`undefined reference to sqlite3_column_origin_name`
解决:yum install sqlite-devel
总结
简单介绍了Linux机器搭建java版gdal环境步骤。
gdal提供大量处理空间数据函数,值得深究。。。
参考材料:
https://zhuanlan.zhihu.com/p/374881279