我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

CentOS7下如何编译安装MapnikMapnik-创新互联

小编给大家分享一下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

编译的时候,官方需求最少要有5GB(for g++)的内存,对于小内存的用户(我当时只有2G)可能会出现内存不够而异常退出的情况,如果出现以下状况而退出的话:

g++: internal compiler error: Killed (program cc1plus)

我们可以临时增加磁盘交换空间来临时解决该问题

sudo dd if=/dev/zero of=/swapfile bs=64M count=16 

sudo mkswap /swapfile 

sudo swapon /swapfile

然后在编译完成后,在恢复到之前的状态

sudo swapoff /swapfile 

sudo rm /swapfile

开始编译

./configure 

make 

make install

中间会出现错误如:

CentOS7下如何编译安装Mapnik Mapnik

编译一下harfbuzz 参照如下修改

Harfbuzz not found

$ brew install harfbuzz
...
$ ./configure
...
Checking for C++ library harfbuzz... no
Could not find required header or shared library for harfbuzz
...
Exiting... the following required dependencies were not found:
 - harfbuzz (HarfBuzz text shaping library | configure with HB_LIBS & HB_INCLUDES)

Solution: HB_LIBS and HB_INCLUDES are directories, not cflags/ldflags, and HB_INCLUDES needs not to include the “harfbuzz” directory itself. If pkg-config says:

$ pkg-config --libs --cflags harfbuzz 

-I/usr/local/Cellar/harfbuzz/0.9.35_1/include/harfbuzz -L/usr/local/Cellar/harfbuzz/0.9.35_1/lib -lharfbuzz

what you actually need is 修改配置文件为,直接指定HB_LIBS,HB_INCLUDES

$ ./configure HB_LIBS=/usr/local/Cellar/harfbuzz/0.9.35_1/lib HB_INCLUDES=/usr/local/Cellar/harfbuzz/0.9.35_1/include

简单测试

python import mapnik

如果出现类似的错误

ImportError: libmapnik.so.3.0: cannot open shared object file: No such file or directory

需要手工添加一下so的位置

vim /etc/ld.so.conf.d/mapnik-x86_64.conf

添加一行内容: /usr/local/lib

然后保存退出,同时执行一下

ldconfig

如果没有问题的话可以试一下渲染demo,会生成一些不同品质不同格式的图片demo文件

python demo/python/rundemo.py

以上是“CentOS7下如何编译安装Mapnik Mapnik”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


当前文章:CentOS7下如何编译安装MapnikMapnik-创新互联
网页地址:http://mswzjz.cn/article/csdppi.html

其他资讯