介绍
小编给大家分享一下CentOS7下如何编译安装Mapnik Mapnik,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
InstallationTroubleshooting编译安装遇到问题汇总
git clone https://github.com/mapnik/mapnik.git
安装必要的依赖
yum install boost-devel postgresql-devel proj-devel proj-epsg
扩展需要的依赖
yum install sqlite-devel libpng-devel libtiff-devel libjpeg-devel libicu-devel
编译的时候,官方需求最少要有5 gb (g + +)的内存,对于小内存的用户(我当时只有2 g)可能会出现内存不够而异常退出的情况,如果出现以下状况而退出的话:
g++:, internal compiler 错误:,Killed (program cc1plus)
我们可以临时增加磁盘交换空间来临时解决该问题
sudo dd 如果=/dev/zero =/swapfile b=64 m 数=16, sudo mkswap /swapfile sudo swapon /swapfile
然后在编译完成后,在恢复到之前的状态
sudo swapoff /swapfile sudo rm /swapfile
开始编译
。/configure make make 安装
中间会出现错误如:
编译一下harfbuzz参照如下修改
harfbuzz未找到
,美元brew install harfbuzz … $ ./configure … Checking for  c++, library harfbuzz…没有 Could not  find required  header 或是shared library for harfbuzz … 退出……,从而following required  dependencies were not 发现: ,安康;harfbuzz (harfbuzz text  shaping library |, configure with HB_LIBS ,, HB_INCLUDES)
解决方案:HB_LIBS HB_INCLUDES目录,不是cflags/ldflags, HB_INCLUDES不需要包括“harfbuzz”目录本身。如果pkg-config说:
,美元pkg-config ——libs ——cflags harfbuzz - i/usr/地方/地窖/harfbuzz/0.9.35_1/include/harfbuzz - l/usr/地方/地窖/harfbuzz/0.9.35_1/lib -lharfbuzz
你实际上需要的是修改配置文件为,直接指定HB_LIBS, HB_INCLUDES
,美元。/configure HB_LIBS=/usr/地方/地窖/harfbuzz/0.9.35_1/lib HB_INCLUDES=/usr/地方/地窖/harfbuzz/0.9.35_1包括
简单测试
python import mapnik
如果出现类似的错误
ImportError:, libmapnik.so.3.0:, cannot open shared object 文件:,No such file 或是目录
需要手工添加一下这样的位置
vim /etc/ld.so.conf.d/mapnik-x86_64。参看
添加一行内容:/usr/local/lib
然后保存退出,同时执行一下
ldconfig
如果没有问题的话可以试一下渲染演示,会生成一些不同品质不同格式的图片演示文件
python 演示/python/rundemo。py
以上是“CentOS7下如何编译安装Mapnik Mapnik”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!