cd home/pi/
mkdir src
sudo apt-get install g++ curl git-core curl build-essential openssl libssl-dev
cd /home/pi/Downloads
wget https://nodejs.org/dist/v6.2.0/node-v6.2.0.tar.gz
cd /home/pi/src
tar xzvf ../Downloads/node-v6.2.0.tar.gz
cd node-v6.2.0
./configure
make
sudo make install
sudo apt-get install make cmake g++ libboost-dev libboost-system-dev \
libboost-filesystem-dev libexpat1-dev zlib1g-dev \
libbz2-dev libpq-dev libgeos-dev libgeos++-dev libproj-dev lua5.2 \
liblua5.2-dev
cd home/pi/src/
git clone https://github.com/openstreetmap/osm2pgsql.git
cd osm2pgsql
mkdir build && cd build
cmake ..
make
sudo make install
sudo apt-get install postgresql postgis
su - postgres
createuser osm
createdb -E UTF8 -O osm osm
createlang plpgsql osm
psql osm
ALTER USER postgres PASSWORD '<password>';
CREATE EXTENSION postgis; CREATE EXTENSION hstore;
ALTER TABLE geometry_columns OWNER TO osm; ALTER TABLE spatial_ref_sys OWNER TO osm;
\q
cd /home/pi/Download
wget http://download.geofabrik.de/europe/france/languedoc-roussillon-latest.osm.pbf
osm2pgsql --create --database osm --username osm --prefix osm -E 3857 --slim --style ../src/osm2pgsql/default.style --hstore --cache 512 languedoc-roussillon-latest.osm.pbf
osm2pgsql --create --database osm languedoc-roussillon-latest.osm.pbf
osm2pgsql -l --append --database osm --username osm --prefix osm -E 3857 --slim --style ../src/osm2pgsql/default.style --hstore --cache 512 midi-pyrenees-latest.osm.pbf
psql osm
CREATE INDEX osm_point_tags ON osm_point USING GIN(tags); CREATE INDEX osm_line_tags ON osm_line USING GIN(tags); CREATE INDEX osm_polygon_tags ON osm_polygon USING GIN(tags);
Fonctionne ! Voir : https://medspx.fr/kb/GIS/generate_osm/
sudo aptitude install gdal-bin mapnik-utils node-carto phyton-shapely
cd ~/src
git clone https://github.com/gravitystorm/openstreetmap-carto
git clone https://github.com/cquest/osmfr-cartocss.git
cd openstreetmap-carto
wget http://svn.openstreetmap.org/applications/rendering/mapnik/generate_tiles_multiprocess.py
chmod -x generate_tiles_multiprocess.py
./get-shapefiles.sh
sed -i '/“dbname”: “gis”/c \\t“dbname”: “osm”' project.mml
sed -i '/“dbname”: “osm”/ i \\t“user”: “osm”, \n\t“host”: “localhost”,' project.mml
nvm use 4.4
npm install carto
./node_modules/.bin/carto project.mml > mapnik.xml
sudo apt-get install ttf-dejavu fonts-droid ttf-unifont fonts-sipa-arundina fonts-sil-padauk fonts-khmeros fonts-taml-tscu fonts-indic fonts-knda
vi generate_tiles_multiprocess.py
chmod +x generate_tiles_multiprocess.py
./generate_tiles_multiprocess.py&
Dernière ligne du fichier generate_tiles_multiprocess.py :
if __name__ == "__main__": home = os.environ['HOME'] try: mapfile = os.environ['MAPNIK_MAP_FILE'] except KeyError: mapfile = home + "/src/openstreetmap-carto/mapnik.xml" try: tile_dir = os.environ['MAPNIK_TILE_DIR'] except KeyError: tile_dir = home + "/web/tiles/bitmap/mapnik/" if not tile_dir.endswith('/'): tile_dir = tile_dir + '/' #------------------------------------------------------------------------- # # Change the following for different bounding boxes and zoom levels minZoom = 8 maxZoom = 17 bbox = (-0.027, 42.155, 8.597, 45.325) render_tiles(bbox, mapfile, tile_dir, minZoom, maxZoom)
Non finalisé, problème avec node-tileserver…
sudo apt-get install libcairo2-dev libjpeg-dev libgif-dev
cd /home/pi/
mkdir workspace/ web/
git clone https://github.com/rurseekatze/node-tileserver.git
cd node-tileserver
npm install
cd /home/pi
ln -s ~/workspace/node-tileserver ~/web/node-tileserver
cd /home/pi/workspace
git clone https://github.com/Miroff/mapcss-parser.git
cd mapcss-parser
sudo pip install ply
sudo python setup.py install
cd /home/pi/workspace
git clone https://github.com/kothic/kothic-js-mapcss.git
cd kothic-js-mapcss
mkdir -p debug/styles/
sudo apt-get install python-rsvg
sudo pip2 install PIL
sudo chmod 777 /usr/local/lib/python2.7/dist-packages/mapcss_parser/
vi scripts/mapcss_converter.py
import Image
par from PIL import Image
vi Makefile
python
par python2
make all
mkdir ../../web/styles
cp debug/styles/*.* ../../web/styles