OpenStreetMap地图服务器安装

本文详细介绍了如何在CentOS 6.7上安装和配置OpenStreetMap地图服务器,包括安装PostgreSQL数据库和PostGIS、升级GCC、编译Boost、安装Apache、mapnik、mod_tile和osm2pgsql,以及导入地图数据、配置防火墙和SELinux等步骤。
摘要由CSDN通过智能技术生成

在CentOS 6.7上安装OSM地图服务器。

安装环境:CentOS-6.7-x86_64-minimal.iso

安装PostgreSQL数据库和PostGIS

curl -O https://download.postgresql.org/pub/repos/yum/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-3.noarch.rpm
sudo rpm -ivh pgdg-centos94-9.4-3.noarch.rpm
sudo rpm -ivh https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
sudo yum install postgresql94-server postgis22_94 postgresql94-devel

初始化数据库:

初始化,开启,添加到启动项

service postgresql-9.4 initdb
service postgresql-9.4 start
chkconfig postgresql-9.4 on

更改GCC版本

下载GCC4.9,编译安装
参考http://blog.techbeta.me/2015/10/linux-centos6-5-upgrade-gcc/

安装C和C++的静态库

yum install -y glibc-static libstdc++-static

安装旧版本的gcc、c++编译器

yum install gcc gcc-c++

安装wget:

yum install wget
wget ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.9.0/gcc-4.9.0.tar.bz2
tar jxvf gcc-4.9.0.tar.bz2
cd gcc-4.9.0

下载一些必备的依赖程序

./contrib/download_prerequisites
./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j4
sudo make install

更改libstdc++动态连接库
参考https://itbilu.com/linux/management/NymXRUieg.html

寻找动态链接库

sudo find / -name "libstdc++.so*" 

找到以后复制

sudo cp /home/zhao/gcc-4.9.0/stage1-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.20  /usr/lib64

cd /usr/lib64
sudo rm -rf libstdc++.so.6
sudo ln -s libstdc++.so.6.0.20 libstdc++.so.6

strings /usr/lib64/libstdc++.so.6 | grep GLIBC

结果显示有GLIBCXX_3.4.20

检查GCC版本,gcc –version显示为4.9即可

编译Boost

Boost版本使用1.50,这个是经过多次尝试以后确定的。Boost编译时候要带上with-python选项。

tar -zxvf boost_1_50_0.tar.gz
./bootstrap.sh
./b2 ./b2 -j4 --with-python 
sudo ./b2 -j4 --with-python install
sudo bash -c "echo '/usr/local/lib' > /etc/ld.so.conf.d/boost.conf"
sudo ldconfig

如果后续仍有环境变量问题,加入环境变量

export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH

如果需要卸载的话,移除默认的头文件目录/usr/local/include /boost和库文件目录/usr/local/lib/

安装Apache

sudo yum install httpd httpd-devel
service httpd start
service httpd stop
service httpd restart
sudo chkconfig httpd on

安装mapnik

在mapnik目录下面./configure一下,需要安装很多依赖,使用yum或者源码编译安装。如果全部解决了,./configure会提示可以编译了。

需要的依赖有

sudo yum install git
sudo yum install libicu-devel libtiff-devel libpng-devel libjpeg-devel zlib-devel proj proj-devel cairo pycairo cairo-devel pycairo-devel libxml2-devel freetype freetype-devel python-devel gdal gdal-devel 

如果Boost库没有加载,将其加入环境变量:

export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH

安装时候的参考

https://github.com/mapnik/mapnik/wiki

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值