Probleme mit mkgmap

Hallo zusammen,
ich möchte mir selber Karten für mein etrex 30 bauen.
Ich scheitere schon am einfachsten Schritt und weiß einfach nicht weiter.
Ich nutze:
-java 8.31
-mkgmap-r3449

Ich will eine Karte der Faröer-Inseln erstellen. Dateigröße 30 MB.
Deshalb muss ich nicht splitten. osm-Daten habe ich von geofabrik.de.

Bevor ich mich dem anspruchsvollem Style\Typ widme, möchte ich einfach nur mit mkgmap
eine 63240001.img Datei erzeugen. Dazu starte ich eine batch-Datei mit dem Inhalt:
java -jar mkgmap.jar FI.osm
pause

…und das kommt dabei rum:
C:\Sven\Karte\mkgmap-r3449\mkgmap-r3449>java -jar mkgmap.jar FI.osm
Time started: Tue Feb 17 12:53:04 CET 2015
Number of MapFailedExceptions: 0
Number of ExitExceptions: 0
Time finished: Tue Feb 17 12:53:12 CET 2015
Total time taken: 7951ms

C:\Sven\Karte\mkgmap-r3449\mkgmap-r3449>pause
Drücken Sie eine beliebige Taste . . .

mkgmap und java werden gestartet;FI.osm liegt im gleichen Verzeichnis; keine Fehlermeldung
aber 63240001.img wird nicht erstellt.

Woran kann das liegen? ich weiß nicht, was ich noch probieren soll.
Und ich habe wirklich sehr große Lust, mich mit dem Thema sehr intensiv zu beschäftigen.
Danke im Voraus für eure Hilfe .

Sven

Der Aufruf und die Ausgabe von mkgmap sieht soweit richtig & plausibel aus, und ist für mich in einem lokalen Test absolut nachvollziehbar. Ich frage mich aber: Was wird denn statt dessen bei Dir erstellt? mkgmap arbeitet ja einige Sekunden. Bei mir wird per Default neben der Datei “63240001.img” eine “osmmap.img”, “osmmap.tdb” und “ovm_63240001.img” erstellt. Was befindet sich bei Dir neues im Verzeichnis “C:\Sven\Karte\mkgmap-r3449\mkgmap-r3449”? BTW, es macht Sinn die Karte in einem anderen Verzeichnis als dem von mkgmap selbst zu erstellen - allein wegen der Übersicht, damit Du auch siehst was erstellt wurde…

Versuche mal, dem mkgmap noch ein paar Optionen mitzugeben.
Diese kannst du entweder in das Kommando schreiben oder in eine separate Datei.
Ein Beisiel, wie ich das mit meiner Canaren-Karte mache:

“C:\Program Files\Java\jre1.8.0_25\bin\java” -jar -Xmx1500M -enableassertions -jar C:\Kartenwerke\Speiche\mkgmap\mkgmap.jar -c C:\Kartenwerke\SpeicheCanaren\mkgmap_options_base.args C:\Kartenwerke\SpeicheCanaren\Splitter*.osm* M02020.TYP

Die Datei mkgmap_options_base.args enthält folgendes:
style-file=C:\Kartenwerke\Speiche\styles_base
family-id=2020
product-id=1
description=SpeicheCanaren
series-name=SpeicheCanaren
family-name=SpeicheCanaren
overview-mapname=SpeicheCanaren
area-name=SpeicheCanaren
draw-priority=30
transparent
latin1
lower-case
remove-ovm-work-files
merge-lines
keep-going
preserve-element-order
reduce-point-density=10
link-pois-to-ways
remove-short-arcs
add-pois-to-areas
add-pois-to-lines
route
ignore-turn-restrictions
process-exits
check-roundabouts
adjust-turn-headings
poi-address
location-autofill=is_in,nearest
housenumbers=C:\Kartenwerke\Speiche\housenumbers.zip
bounds=C:\Kartenwerke\Speiche\bounds.zip
precomp-sea=C:\Kartenwerke\Speiche\sea.zip
show-profiles=1
tdbfile
gmapsupp
index

Ob das jetzt hilfreich ist? Dazu muss er sich erstmal die Bounds und Sea-Files laden… :sunglasses:

Soll ja nur das Prinzip veranschaulichen.

Du kannst auch erstmal die Entwicklungsumgebung der Freizeitkarte ausprobieren.
Und wenn denn alles läuft, von dortr deine eigene Entwicklungsumgebung ableiten.

Gruß Klaus

Du kannst Dir auch den Map Composer herunterladen und die Karte erst mal damit bauen. Der zeigt alle verwendeten Kommandozeilenaufrufe in einem Logfile an, so daß man danach auch manuell weitermachen kann.

Vorteil ist, daß bereits die richtigen Eingabedaten, Koordinaten etc. verwendet werden.

bye, Nop

Danke für die zahlreichen antworten.
@Joachim Moskalewski:das ist ja das komische, es wird (sicher) rein gar nichts erzeugt.
@speichennippel: bei meinen ersten Versuchen hatte ich einige Optionen usw. eingefügt. Dann hat mkgmap auch viel länger gearbeitet…aber erzeugt wurde auch nichts. Daher ist mein Gedanke, dass es erst mal ganz rudimentär ohne optionen funktionieren muss, bevor ich damit weitermache.

Meint ihr das Problem ist in Java oder in mkgmap zu suchen? Oder stimmt mit den osm-Rohdaten was nicht (was ich aber nicht glaube)?
Mein Problem ist, dass ich mittlerweile nicht mehr weiß, was ich noch probieren kann.
Ich habe Java und mkgmap jetzt schon mehrmals neu installiert. osm-Dateien von verschieden Bezugsquellen bezogen etc.
Oder könnte es ev. mit windows zusammenhängen?
Mir ist klar, dass ihr aus der Ferne wahrscheinlich auch nicht viel dazu sagen könnt, aber vielleicht hat einer einen guten Gedanken

Ich möchte meine Karten auch mit mkgmap erstellen, da es meiner Meinung der beste Weg ist.

Wie du richtig sagst kann man aus der Ferne recht wenig sagen.

Im Prinzip hast du zwei Möglichkeiten:
Die holprige wäre sich die Doku zu mkgmap durchzulesen, die Parameter zu verstehen und richtig mkgmap mit zu geben.
Die einfachere wäre, sich erstmal über eine GUI/Arbeitsumgebung mkgmap zu nähern. Die weiß, was mkgmap braucht und zeigt dir dies in der Regel auch an. Da wurde dir hier schon die Freizeitkartenumgebung und der MapComposer vorgeschlagen. Ich würde dir für den Einstieg den MapComposer empfehlen, vorallem wenn du nicht so fit im DOS-Fenster bist.

Zumindest müsstest du mkgmap mitteilen, wo es die style Dateien findet.
Vielleicht wird auch das Java nicht richtig aufgerufen. Das Problem hatte ich auch mal und konnte es lösen, indem ich den Pfad zu Java in “” gesetzt habe. Man kann auch was über Systemvariabeln regeln, das habe ich aber nicht geschafft.

mkgmap hat eingebaute styles – wenn man keine eigenen angibt, werden die genommen.
Daran kann es eigentlich nicht liegen.

/hca

Hi,
lade mal hier bremen-latest.osm.bz2
http://download.geofabrik.de/europe/germany.html
entpacke die OSM Datei und starte folgendes Skript:

makemap.bat:


java -Xmx1G -ea -esa -jar <pfad zu mkgmap>\mkgmap.jar *.osm >log.txt 2>error.txt
type error.txt
pause

Klappt das?

Bei mir entstehen folgende Dateien:

63240001.img, osmmap.img, osmmap.tdb, ovm_63240001.img

Versionen:
java 7
mkgmap 3333

Java + mkgmap sollte so wie beschrieben direkt funktionieren - weitere Parameter braucht es nicht. mkgmap selber wird aufgerufen und läuft, siehe dessen makellose Ausgabe im Terminal. Wäre die OSM-Datei fehlerhaft, würde mkgmap einen Fehler schmeißen - ebenso bei fehlenden Schreibrechten oder fehlerhaften Aufrufen von Dateinamen (und selbst bei einer leeren OSM-Datei wird zumindest eine der üblichen Dateien erstellt). Zumindest unter Linux funktioniert alles mit eben jener Faröer-OSM-Datei der Geofabrik (bz2 entpackt) mit genau dieser mkgmap-Version und genau Deinem Aufruf.

Ich habe keinen Schimmer mehr von Windows, aber: Ich würde als nächstes einen Blick in Richtung Rechte werfen - darf ein Programm bei Dir überhaupt dort eine Datei erstellen? Ich nehme mal an, "C:\Sven" liegt nicht wirklich in Deiner $HOME Umgebung? (Sicher im $HOME liegt Dein Desktop-Ordner.) Könnte eventuell irgend eine Antivirensoftware dawischenfunken? Und vielleicht kann wer etwas besser helfen, wenn wir wissen, welche Windows-Version das ist (sowie 32 oder 63bit).

Und einen weiteren Funktionscheck würde ich durchführen: “java -jar mkgmap.jar --list-styles” - das sollte Dir auflisten, welche Styles vorhanden sind; Per Default kommt da ein wenig mit und sollte gelistet werden.

Und dann könntest Du noch den Parameter “–verbose” hinzufügen - dann sollte mkgmap gesprächiger sein. Bei mir hat das allerdings keine Wirkung… (vermutlich weil nicht mehr zu melden ist).

Moin Sven.

Ich habe eben mal im Selbstversuch eine Karte der Faröer-Inseln erstellt, mit mkgmap-r3449 und ohne irgendwelche weiteren Optionen, und das hat funktioniert – das ganze allerdings unter Linux und mit java 7. (Die Geodaten habe ich von der Geofabrik heruntergeladen).

Ich denke, daß man fehlende mkgmap-Optionen da erstmal als Ursache für Dein Problem ausschließen kann.

mkgmap produziert erfahrungsgemäß auch Fehlermeldungen, wenn irgendwas nicht stimmt, und das scheint ja bei Dir nicht der Fall zu sein:

– das sieht im Prinzip genauso aus wie bei mir.

Ich denke, daß man einen fehlerhaften Java-Aufruf deshalb auch als Fehlerursache ausschließen kann.

– Jetzt sehe ich gerade, daß es inzwischen weitere Antworten hier gibt – ich (kein Windows-Experte) würde mal in Richtung

nach dem Fehler suchen.

Könnte es eventuell sein, daß unter Windows der Output von mkgmap irgendwo ganz anders landet als C:\Sven\Karte\mkgmap-r3449\ ?
Es müßte unter anderem eine Datei osmmap.tdb erzeugt werden, und nach der kannst Du ja mal suchen.

Viele Grüße
Hartwig

Es funktioniert (…und funktionierte schon immer)!!!
Vielen Dank an Joachim und Hartwig ihr habt mich auf die richtige Spur gebracht.
Danke auch an alle Anderen, die sich die Zeit genommen haben mir zu helfen.

Der output-Ordner wird versteckt direkt unter C angelegt (C:\VTRoot\HarddiskVolume1\Sven\Karte\mkgmap-r3449\mkgmap-r3449).
Diese output-Dateien hatte ich mit der windows-Suche nicht gefunden. Dummerweise bin ich nicht auf die Idee gekommen, dass es versteckt angelegt werden könnte.
Ich überlege mir, auf Linux umzusteigen.
Jetzt kann ich endlich mit mkgmap experimentieren.

Super Forumsmitglieder!

Sven

Oder unter Windows die für Programme/Daten vorgesehenen Verzeichnisse nutzen. :wink:

Wobei ich Dir Linux nicht ausreden will, im Gegenteil, ich nutze Windows selber nur noch auf meinem Firmenlaptop.

ODer mkgmap zu sagen, wo es die Daten ablegen soll.

Ich habe das Gefühl, das Ganze hat überhaupt nichts mit mkgmap oder seinen Parametern zu tun.

Nach diesem Hinweis handelt es sich bei dem komischen Pfad um die Sandbox von Commodo Internet Security.

Das würde heißen mkgmap macht alles richtig, aber CIS parkt die “verdächtige” Datei anschließend um.

Hast Du CIS laufen?

bye, Nop