【Geoserver】Geoserver 安装 GDAL 扩展

1、安装 gcc,g++ 等编译器

yum -y install gcc gcc-c++ autoconf pcre pcre-devel make automake

2、安装 sqlite-devel

yum install sqlite-devel

3、安装 proj

proj下载,解压安装

tar -zxvf proj-6.2.1.tar.gz
cd proj-6.2.1
./configure
make
make install

4、安装 swig

yum install -y swig

5、安装 gdal

gdal下载,解压安装

tar -zxvf gdal-3.0.4.tar.gz
cd gdal-3.0.4
./configure --prefix="/usr/local"
make
make install

注意:编译可能会出现的问题
解决办法:https://my.oschina.net/u/4382322/blog/4523014

/usr/local/gdal/gdal-3.0.4/.libs/libgdal.so: undefined reference to `sqlite3_column_origin_name'
/usr/local/gdal/gdal-3.0.4/.libs/libgdal.so: undefined reference to `sqlite3_column_table_name'
collect2: error: ld returned 1 exit status
make[1]: *** [gdalinfo] 错误 1
make[1]: 离开目录“/usr/local/gdal/gdal-3.0.4/apps”
make: *** [apps-target] 错误 2
# 具体做法是在源码文件夹下
cd ./sqlite-autoconf-3320300
vim ./sqlite3.c

# 添加
#define SQLITE_CORE 1
#define SQLITE_AMALGAMATION 1
#ifndef SQLITE_PRIVATE
# define SQLITE_PRIVATE static
#endif
#define SQLITE_ENABLE_COLUMN_METADATA 1

/************** Begin file ctime.c *******************************************/

# 然后再
./configure --prefix="/usr/local"
make && make install

配置环境变量

vi ~/.bashrc
export PATH=$PATH:/usr/local/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

验证是否安装成功

[root@eureka src]# gdalinfo --version
GDAL 3.0.4, released 2020/01/28

6、安装jdk/jre、ant

jdk安装不做介绍。

安装 ant

官网下载:http://ant.apache.org/

wget https://mirrors.tuna.tsinghua.edu.cn/apache//ant/binaries/apache-ant-1.10.10-bin.tar.gz

解压缩:

tar -zxvf apache-ant-1.10.10-bin.tar.gz

配置环境变量:

# 打开配置文件
vim /etc/profile

# 在文件最后添加ant环境
export ANT_HOME=/usr/local/src/apache-ant-1.10.10

# 并把ant环境添加到path中
export PATH=$PATH:$JAVA_HOME/bin:${ANT_HOME}/bin

# 刷新配置文件
source /etc/profile

# 测试
[root@eureka src]# ant -version
Apache Ant(TM) version 1.10.10 compiled on April 12 2021

7、编译并生成gdal.jar

# 使用 gdal 进行 java 的转换需修改 swig 对应的文件
# 修改文件:gdal 根目录 /swig/java/java.opt,添加 JAVA_HOME 的值为 java 的根目录。
vim /home/gdal/gdal-3.0.0/swig/java/java.opt
# 文件最后 添加
JAVA_HOME=/opt/jdk1.8.0_291
# 在路径:gdal根目录/swig/java中执行
make && make install
# 把gdal根目录/swig/java中生成的gdal.jar文件复制到$JAVA_HOME/jre/lib/ext下
cp gdal.jar /opt/jdk1.8.0_291/jre/lib/ext/
# 把.so、.lo、.o、.la、*.a复制到自己方便的文件夹下,一般是$JAVA_HOME/jre/lib/amd64/server
cp *.so *.lo *.o *.la *.a /opt/jdk1.8.0_291/jre/lib/amd64/server
# vim /etc/profile 然后在/etc/profile中添加
export LD_LIBRARY_PATH=.:$JAVA_HOME/jre/lib/amd64/server
# 最后
source /etc/profile

注意:可能遇见的问题

jni.h: No such file or directory(C++编译无法找到jni.h)

解决办法:修改/etc/profile,添加 :

export CPATH=$CPATH:$JAVA_HOME/include:$JAVA_HOME/include/linux
export C_INCLUDE_PATH=$C_INCLUDE_PATH:$JAVA_HOME/include:$JAVA_HOME/include/linux
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:$JAVA_HOME/include:$JAVA_HOME/include/linux

8、配置环境

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
export JAVA_HOME=/opt/jdk1.8.0_291
export ANT_HOME=/usr/local/src/apache-ant-1.10.10
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin:${ANT_HOME}/bin
export CPATH=$CPATH:$JAVA_HOME/include:$JAVA_HOME/include/linux
export C_INCLUDE_PATH=$C_INCLUDE_PATH:$JAVA_HOME/include:$JAVA_HOME/include/linux
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:$JAVA_HOME/include:$JAVA_HOME/include/linux
export LD_LIBRARY_PATH=.:$JAVA_HOME/jre/lib/amd64/server

参考:centos7.5安装gdal编译环境

9、启动 Geoserver

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值