Skip to content

Instantly share code, notes, and snippets.

@systemed
Created January 30, 2020 18:50
Show Gist options
  • Select an option

  • Save systemed/c9731bd7cd17d88f4d6ef21cc53ab55f to your computer and use it in GitHub Desktop.

Select an option

Save systemed/c9731bd7cd17d88f4d6ef21cc53ab55f to your computer and use it in GitHub Desktop.

Revisions

  1. systemed created this gist Jan 30, 2020.
    59 changes: 59 additions & 0 deletions osm_centos7.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,59 @@
    # Install OSM rendering stack on CentOS 7
    # Richard Fairhurst, January 2020

    yum -y install epel-release

    # Postgres/GDAL
    rpm -Uvh https://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-centos94-9.4-3.noarch.rpm
    yum -y install postgresql94-server postgresql94-devel postgis24_94 postgis24_94-docs postgis24_94-utils gdal30 gdal30-devel

    # GCC
    yum -y install centos-release-scl
    yum -y install devtoolset-7
    scl enable devtoolset-7 bash

    # Git
    yum -y install https://centos7.iuscommunity.org/ius-release.rpm
    yum -y install git2u-all

    # Dependencies
    yum -y install libpng libtiff libjpeg freetype cairo pycairo sqlite curl libcurl bzip2-devel libpng-devel libtiff-devel zlib-devel libjpeg-devel libxml2-devel python-setuptools freetype-devel libicu-devel sqlite-devel libcurl-devel cairo-devel pycairo-devel protobuf-devel protobuf-c-devel lua-devel cmake boost-thread autoconf automake libtool pkgconfig ragel gtk-doc glib2 glib2-devel libpng libpng-devel libwebp libtool-ltdl-devel python-devel harfbuzz harfbuzz-devel harfbuzz-icu cabextract xorg-x11-font-utils fontconfig perl-DBD-Pg mesa-libGLU-devel proj proj-devel boost boost-devel boost-build

    # osm2pgsql
    git clone git://github.com/openstreetmap/osm2pgsql.git
    cd osm2pgsql
    mkdir build && cd build && cmake ..
    make
    make install
    cd ~

    # Mapnik
    git clone git://github.com/mapnik/mapnik
    cd mapnik
    git submodule update --init
    ./bootstrap.sh
    sed -i 's/clang/gcc/' config.py
    sed -i 's/gcc++/g++/' config.py
    ./configure
    make
    make install
    ldconfig
    cd ~

    # Apache
    yum -y install httpd httpd-devel

    # mod_tile
    git clone git://github.com/openstreetmap/mod_tile.git
    cd mod_tile
    ./autogen.sh
    ./configure
    mkdir -p /home/travis/build/mapbox/mason/
    ln -s ~/mapnik/mason_packages /home/travis/build/mapbox/mason/
    mkdir -p /usr/include/mapnik
    ln -s ~/mapnik/include/mapnik/geometry/box2d.hpp /usr/include/mapnik
    make
    make install
    make install-mod_tile
    ldconfig
    cd ~