Ubuntu 16.04 Xenial Xerus
Ubuntu 14.04 Trusty Tahr
Ubuntu 12.04 Precise Pangolin
Dieser Artikel richtet sich an alle radfahrenden Nutzer von GPS-Geräten der Marke Garmin, die eine selber erstellte Openstreetmap-Karte auf ihr Gerät bringen wollen.
Zuerst müssen einige Programme aus den ofiziellen Paketquellen installiert [1] werden:
ant
ant-contrib
bzr
m4
openjdk-7-jdk
subversion
openjdk-8-jdk (Xenial)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install ant ant-contrib bzr m4 openjdk-7-jdk subversion openjdk-8-jdk
sudo aptitude install ant ant-contrib bzr m4 openjdk-7-jdk subversion openjdk-8-jdk
Um sich eine Radkarte zu erstellen, öffnet man ein Terminalfenster [2], erstellt und wechselt in einen geeigneten Ordner (z.B. ~/OSM) und lädt dann zuerst den Quellcode mit Bazaar aus dem Launchpad-Projekt OSM Radkarte herunter:
bzr branch lp:radkarte
Danach wechselt man in den entstandenen Ordner:
cd radkarte
Nach einigen sinnvollen Anpassungen (siehe unten) gibt man
ant dist
ein und schaut dem Rechner beim Arbeiten zu. Dabei ist zu beachten, das das Skript einige Dateien mit einer Gesamtgröße von ca. 500 MiB sowie die gewünschte Region von der Geofabrik herunterlädt. Wenn man die Region schon heruntergeladen hat, kopiert man sie in den Unterordner build/, damit sie verwendet wird.
Die Radkarte(n) (also die entpackte(n) Datei(en) gmapsupp.img aus dem Unterordner build/dist/) speichert man danach auf der SD-Karte des Garmins im Ordner garmin/ ab.
Bevor man los legt, lohnen sich einige Anpassung an der Konfigurationsdatei build.xml:
Wenn man eine andere Karte als Deutschland generieren will (z.B. nur ein bestimmtes Bundesland), muss man in der Datei build.xml den Downloadpfad und -dateiname anpassen:
<property name="dl_path" value="europe/"/> <property name="dl_region" value="germany"/>
Die jeweiligen Dateien und Pfade findet man bei der Geofabrik . Für Stuttgart wäre es z.B.
<property name="dl_path" value="europe/germany/baden-wuerttemberg/"/> <property name="dl_region" value="stuttgart-regbez"/>
Wenn man mehr als eine auf diese Art generierte Karte auf dem SD-Karte speichert, gibt es das Problem, dass diese zum einen zusammengefasst werden und zum anderen nur eine der Karten angezeigt wird. Grund hierfür ist, das diese alle die gleiche ID bekommen und somit nur eine gewinnt.
Daher ändert man die Zeile
<property name="family_id_base" value="5900"/>
ab und vergibt dort bei jeder Karte andere IDs, die sich mindestens in den ersten zwei Ziffern unterscheiden sollten. Man kann z.B. die ersten zwei Ziffern hochzählen lassen: 5900, 6000, 6100, … Erst dann erscheinen beide Karten auf dem Navi für eine eigene Anwahl und können auch gleichzeitig dargestellt werden.
Seit ungefähr rev. 400 kommt eine Fehlermeldung:
BUILD FAILED /home/radkarte/build.xml:28: Problem: failed to create task or type math Cause: The name is undefined.
Laut diesem Bugreport muss man zur Abhilfe folgendes Paket installieren:
ant-contrib
mit apturl
Paketliste zum Kopieren:
sudo apt-get install ant-contrib
sudo aptitude install ant-contrib
Wenn es Fehlermeldungen der Art
[apply] Schwerwiegend (SeaGenerator): /home/dee/Downloads/radkarte/build/59000002.osm.pbf: Cannot read index file index.txt.gz [apply] Schwerwiegend (LocationHook): /home/dee/Downloads/radkarte/build/59000005.osm.pbf: Disable LocationHook because bounds directory is unusable.
gibt, dann liegt das daran, dass die vorkompilierten Grenzdateien nicht bzw. nicht korrekt heruntergeladen wurden (siehe Bugreport).
Da diese nicht zwingend notwendig sind, reicht es, in der build.xml folgende Zeilen zu entfernen:
<arg value="--precomp-sea=${basedir}/${cachedir}/downloads/precomp_sea.zip"/> <arg value="--bounds=${basedir}/${cachedir}/downloads/precomp_bounds.zip"/>
Diese tauchen jeweils zweimal in der Datei auf.
OSM-Radkarten selbst erstellt - Blogeintrag, 06/2013
OpenStreetMap Übersichtsartikel
OpenStreetMap/Programme Programmübersicht
Diese Revision wurde am 15. Mai 2016 21:16 von march erstellt.