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
中间会出现错误如:
编译一下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
相关文章
- 以D-Link530的网卡进行模块的编译. 由于Linux的默认内核已经建立很多网卡驱动程序模块,所以在编译网卡模块之前就要确认网卡芯片是否被支持,如果被支持,就不需要编译模块.2008-09-08
- 当你安装完Linux系统,并且已经启动,恭喜你!如果你的硬盘上还安装了WinNT/2000系统,你试图去访问另一个NTFS分区时却遇到了麻烦。因为你所用的Linux系统没有已编译的支持2008-09-08
CentOS 6.4下编译安装MySQL 5.6.14详细步骤
CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,那我们就通过源代码安装高版本的MySQL5.6.14。2013-10-24RHEL 7.0 编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14运行环境
这篇文章主要介绍了RHEL 7.0 编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14运行环境,需要的朋友可以参考下2014-07-20- 这篇文章主要介绍了在CentOS系统中编译安装Hiawatha服务器的教程,包括相关的PHP连接设置,需要的朋友可以参考下2015-06-29
- iptables是Linux上常用的防火墙软件,下面说一下iptables的安装、清除iptables规则、iptables只开放指定端口、iptables屏蔽指定ip、ip段及解封、删除已添加的iptables规则2012-12-24
CentOS安装rpm包时遇到Header V3 DSA signature: NOKEY时解决办法
linux/centos Header V3 DSA signature: NOKEY, key ID 错误解决方法,需要的朋友可以参考下。2010-10-17解决linux系统CentOS下调整home和根分区大小的方法
在使用linux的过程中, 有时会出现因为安装系统时分区不当导致有的分区空间不足,而有的分区空间过剩的情况.下面本文将讲述解决linux系统CentOS下调整home和根分区大小的方法2014-10-14- 在linux中查看与修改文件权限我们都必须使用命令来操作,不能像windows一样点几下就好了,下面我们简单的介绍一下linux中的相关命令2012-12-24
最新评论