mapnik3.10服务安装3

需要用mapnik加载shp文件展示数据:

需要给mapnik安装gdal插件:

我的环境是centos8 之前安了proj6.3.2
安装步骤:采用源码编译:

1.下载安装json-c

安装之后配置环境变量:

export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:$PKG_CONFIG_PATH
pkg-config --modversion json-c
0.14

2.下载gdal源码:我这里用3.2.0版本,(更高的版本好像对proj的版本要求比较高。)

tar zxvf gdal-3.2.0.tar.gz 解压
cd gdal-3.2.0
./configure 查看配置信息
最后输出:
2024-04-15 16:34:10   SWIG Bindings:             no
2024-04-15 16:34:10 
2024-04-15 16:34:10   PROJ >= 6:                 yes
2024-04-15 16:34:10   enable GNM building:       yes
2024-04-15 16:34:10   enable pthread support:    yes
2024-04-15 16:34:10   enable POSIX iconv support:yes
2024-04-15 16:34:10   hide internal symbols:     no

3.运行make,没有make的话直接安装就行了:

安装cmake:

dnf install epel-release  安装 EPEL 软件仓库:
dnf install cmake 安装 CMake:
cmake --version 验证 CMake 是否成功安装

然后运行make进行编译就行了。
我第一次编译报错:

2024-04-15 18:07:51 /bin/sh /home/gdal/gdal-3.2.0/libtool --mode=compile --silent --tag=CXX g++ -I/home/gdal/gdal-3.2.0/port -I/home/gdal/gdal-3.2.0/gcore -I/home/gdal/gdal-3.2.0/alg -I/home/gdal/gdal-3.2.0/ogr -I/home/gdal/gdal-3.2.0/ogr/ogrsf_frmts -I/home/gdal/gdal-3.2.0/gnm -I/home/gdal/gdal-3.2.0/apps -DHAVE_AVX_AT_COMPILE_TIME -DHAVE_SSSE3_AT_COMPILE_TIME -DHAVE_SSE_AT_COMPILE_TIME -g -O2  -Wall -Wextra -Winit-self -Wunused-parameter -Wformat -Werror=format-security -Wno-format-nonliteral -Wlogical-op -Wshadow -Werror=vla -Wdate-time -Wnull-dereference -Wduplicated-cond -Wextra-semi -Wfloat-conversion -Wmissing-declarations -Wnon-virtual-dtor -Woverloaded-virtual -fno-operator-names -Wzero-as-null-pointer-constant -Wsuggest-override -Wimplicit-fallthrough   -DGNM_ENABLED -I/home/gdal/gdal-3.2.0/port  -DGDAL_COMPILATION -c -o ../o/jpeg2000dataset.lo jpeg2000dataset.cpp
2024-04-15 18:07:55 jpeg2000dataset.cpp:40:10: fatal error: jasper/jasper.h: No such file or directory
2024-04-15 18:07:55  #include <jasper/jasper.h>
2024-04-15 18:07:55           ^~~~~~~~~~~~~~~~~
2024-04-15 18:07:55 compilation terminated.
2024-04-15 18:07:55 make[2]: *** [../../GDALmake.opt:646: ../o/jpeg2000dataset.lo] Error 1
2024-04-15 18:07:55 make[2]: Leaving directory '/home/gdal/gdal-3.2.0/frmts/jpeg2000'
2024-04-15 18:07:55 make[1]: *** [GNUmakefile:15: jpeg2000-install-obj] Error 2
2024-04-15 18:07:55 make[1]: Leaving directory '/home/gdal/gdal-3.2.0/frmts'
2024-04-15 18:07:55 make: *** [GNUmakefile:114: frmts-target] Error 2
2024-04-15 20:47:36 [root@07d48aac5991 gdal-3.2.0]# yum install jasper-devel
2024-04-15 20:47:40 Last metadata expiration check: 4:44:17 ago on Mon 15 Apr 2024 08:03:23 AM UTC.  
2024-04-15 20:47:40 No match for argument: jasper-devel
2024-04-15 20:47:40 Error: Unable to find a match: jasper-devel

看报错提示jasper/jasper.h有问题,找不到jasper.h的头,重新安装下jasper

1.启用 PowerTools 仓库

2024-04-15 20:49:41 [root@07d48aac5991 gdal-3.2.0]#    yum config-manager --set-enabled powertools 

2.再次安装 jasper-devel:
底下是安装信息
2024-04-15 20:49:47 [root@07d48aac5991 gdal-3.2.0]#    yum install -y jasper-devel
CentOS Linux 8 - PowerTools                                                             1.5 MB/s | 2.3 MB     00:01      0  B     --:-- ETA
2024-04-15 20:49:51 Last metadata expiration check: 0:00:02 ago on Mon 15 Apr 2024 12:49:49 PM UTC.
2024-04-15 20:49:54 Dependencies resolved.
2024-04-15 20:49:54 ========================================================================================================================
2024-04-15 20:49:54  Package                       Architecture            Version                        Repository                   Size
2024-04-15 20:49:54 ========================================================================================================================
2024-04-15 20:49:54 Installing:
2024-04-15 20:49:54  jasper-devel                  x86_64                  2.0.14-5.el8                   powertools                  635 k
2024-04-15 20:49:54 
2024-04-15 20:49:54 Transaction Summary
2024-04-15 20:49:54 ========================================================================================================================
2024-04-15 20:49:54 Install  1 Package
2024-04-15 20:49:54 
2024-04-15 20:49:54 Total download size: 635 k
2024-04-15 20:49:54 Installed size: 2.8 M
2024-04-15 20:49:54 Downloading Packages:
jasper-devel-2.0.14-5.el8.x86_64.rpm                                                    364 kB/s | 635 kB     00:01      0  B     --:-- ETA
2024-04-15 20:49:56 ------------------------------------------------------------------------------------------------------------------------
2024-04-15 20:49:56 Total                                                                                   362 kB/s | 635 kB     00:01     
2024-04-15 20:49:56 Running transaction check
2024-04-15 20:49:56 Transaction check succeeded.
2024-04-15 20:49:56 Running transaction test
2024-04-15 20:49:56 Transaction test succeeded.
2024-04-15 20:49:56 Running transaction
  Preparing        :                                                                                                1/1 
  Installing       : jasper-devel-2.0.14-5.el8.x86_64                                                               1/1 
  Running scriptlet: jasper-devel-2.0.14-5.el8.x86_64                                                               1/1 
  Verifying        : jasper-devel-2.0.14-5.el8.x86_64                                                               1/1 
2024-04-15 20:49:57 
2024-04-15 20:49:57 Installed:
2024-04-15 20:49:57   jasper-devel-2.0.14-5.el8.x86_64                                                                                      
2024-04-15 20:49:57 
2024-04-15 20:49:57 Complete!

安装完以后查询下  find / -name 'jasper.h'
/usr/include/jasper/jasper.h





安装成功后,运行./configure查看信息,不太放心加上jasper的配置

2024-04-15 20:50:08 [root@07d48a   CPPFLAGS="-I/usr/include/jasper" ./configure 

然后编译完之后运行:make install安装

2024-04-15 22:54:22 make[1]: Leaving directory '/home/gdal/gdal-3.2.0/apps'
2024-04-15 22:54:22 rm -f gdal.pc
2024-04-15 22:54:22 echo 'CONFIG_VERSION='`cat ./VERSION`'' >> gdal.pc
2024-04-15 22:54:22 echo 'CONFIG_INST_PREFIX=/usr/local' >> gdal.pc
2024-04-15 22:54:22 echo 'CONFIG_INST_LIBS=-L/usr/local/lib -lgdal' >> gdal.pc
2024-04-15 22:54:22 echo 'CONFIG_INST_CFLAGS=-I/usr/local/include' >> gdal.pc
2024-04-15 22:54:22 echo 'CONFIG_INST_DATA=/usr/local/share/gdal' >> gdal.pc
2024-04-15 22:54:23 cat gdal.pc.in >> gdal.pc
2024-04-15 23:17:40 [root@07d48aac5991 gdal-3.2.0]# make install

安装成功:

2024-04-15 23:19:18 make[1]: Leaving directory '/home/gdal/gdal-3.2.0/gnm'
2024-04-15 23:19:18 (cd apps; make install)
2024-04-15 23:19:18 make[1]: Entering directory '/home/gdal/gdal-3.2.0/apps'
2024-04-15 23:19:18 for f in gdalinfo gdal_translate gdaladdo gdalwarp nearblack gdalmanage gdalenhance gdaltransform gdaldem gdallocationinfo gdalsrsinfo gdalmdiminfo gdalmdimtranslate gdal_viewshed gdal_create gdal_contour gdaltindex gdal_rasterize gdal_grid ogrinfo ogr2ogr ogrtindex ogrlineref testepsg gdalbuildvrt gnmmanage gnmanalyse ; do /bin/sh /home/gdal/gdal-3.2.0/libtool --mode=install --silent /home/gdal/gdal-3.2.0/install-sh -c $f /usr/local/bin ; done
2024-04-15 23:19:51 /home/gdal/gdal-3.2.0/install-sh -c -m 0644 gdal_utils.h /usr/local/include
2024-04-15 23:19:52 /bin/sh /home/gdal/gdal-3.2.0/libtool --mode=install --silent /home/gdal/gdal-3.2.0/install-sh -c gdal-config-inst /usr/local/bin/gdal-config
2024-04-15 23:19:53 make[1]: Leaving directory '/home/gdal/gdal-3.2.0/apps'
2024-04-15 23:19:53 for f in LICENSE.TXT data/*.* ; do /home/gdal/gdal-3.2.0/install-sh -c -m 0644 $f /usr/local/share/gdal ; done

看到这些信息就是安装成功了

2024-04-15 23:21:06 /bin/sh /home/gdal/gdal-3.2.0/libtool --mode=finish --silent /usr/local/lib
2024-04-15 23:21:07 /home/gdal/gdal-3.2.0/install-sh -d /usr/local/lib/pkgconfig
2024-04-15 23:21:07 /home/gdal/gdal-3.2.0/install-sh -c -m 0644 gdal.pc /usr/local/lib/pkgconfig/gdal.pc

然后查看版本看看;

2024-04-15 23:25:15 [root@07d48aac5991 gdal-3.2.0]# gdalinfo --version

提示报错:

2024-04-15 23:25:15 gdalinfo: error while loading shared libraries: libjson-c.so.5: cannot open shared object file: No such file or directory

因为libjson在lib64底下,配置环境变量把lib64读上:
export LD_LIBRARY_PATH=/home/boost/boost_1_68_0/stage/lib:/usr/local/lib:/usr/local/lib64:$LD_LIBRARY_PATH

2024-04-15 23:31:08 [root@07d48aac5991 gdal-3.2.0]# source ~/.bashrc 刷新
2024-04-15 23:31:11 [root@07d48aac5991 gdal-3.2.0]# gdalinfo --version 查看版本
2024-04-15 23:31:11 GDAL 3.2.0, released 2020/10/26

在mapnik进行gdal插件安装:(我这块也没出啥问题,直接安编译就行了)

cd mapnik
python3 scons/scons.py configure  这里可以看看输出有没有检测到gdal,有的话直接安就行了
python3 scons/scons.py
python3 scons/scons.py install

然后在python里面使用:
在这里插入图片描述

效果:
在这里插入图片描述

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值