Osmconverter ausschneiden funktioniert nicht

Erst die Antwort auf eure fragen .
Die Daten von der Geofabrick sind von Gestern neu down geladen .
Mein System ist ein win 10 Pro 64 Bit
Der Fehler basiert beim Erzeugen des auszuschneidenden Berich aus der Alpe 2.2 GB oder Deutschland 2.9 GB .osm.pbf der Geofabrik.

Die erzeugte .osm. pbf nach dem ausschneiden ist nur 1 MB groß .Wenn ich den gleichen Bereich aus der Bayernkarte ausschneide ist die Datei 153 MB groß.
Ist ja verständlich das wenn keine Daten in der zu erzeugenden osm.pbf nach dem Ausschneiden sind auch keine .o5m Datei mit Inhalt erzeugt werden kann, die aber für den weiteren Verlauf zum Erzeugen der Karte benötigtet wird.

Nur als ergänzung , das darstellen der karte aus der Bayern .os,.pbf läuft komplett durch und erzeigt eine Karte im Format . img , sogar mit Höhenlinien und 3D (hillshade)
Ich hab im Download Bereich von Osmconverter das gelesen , aber ich versteh es eigentlich nicht !
Das könnte schon in diese Richtung gehen.
Zitat:
Einschränkungen: Die Windows-Version (die heruntergeladene Binärdatei) funktioniert nicht mit großen Dateien wie planet.osm (mehr als 2 GB), wenn die Option --complete-ways, --complete-multipolygons oder --complete-boundaries verwendet wird. Beispielsweise schlägt die Windows-64-Bit-Version mit dem Befehl “osmconvert planet.osm.pbf -b = 17.7,59.15,18.4,59.5 -o = stockholm.osm --complete-ways --drop-version --verbose” fehl. . Der gleiche Befehl funktioniert einwandfrei mit der 64-Bit-Version von Linux. Dies scheint durch ein Problem beim Suchen nach Dateipositionen außerhalb des vorzeichenbehafteten 32-Bit-Bereichs verursacht zu werden. Dies ist eine Einschränkung der zlib-Bibliothek, die derzeit mit den Windows-Binärdateien verknüpft ist.
DIY: Wenn Sie Ihr eigenes 64-Bit-Binärprogramm ohne Einschränkungen erstellen möchten, müssen Sie die neueste Zlib mit den Flags _LARGEFILE64_SOURCE = 1 und _LFS64_LARGEFILE = 1 erstellen. Stellen Sie sicher, dass dieser Typ z_off64_t in zconf.h als __int64 definiert ist
Zitat ende
Bedeutet das ich sollte die 32 Bit Version benutzen ?
Und den Satz versteh ich nicht !
Zidat:
DIY: Wenn Sie Ihr eigenes 64-Bit-Binärprogramm ohne Einschränkungen erstellen möchten, müssen Sie die neueste Zlib mit den Flags _LARGEFILE64_SOURCE = 1 und _LFS64_LARGEFILE = 1 erstellen. Stellen Sie sicher, dass dieser Typ z_off64_t in zconf.h als __int64 definiert ist
Zidat ende
Danke allen die sich mit meinen Problem beschäftigen und versuchen zu helfen !

gruss

wo soll das “-V” hin ?

Danke son mal !

gruss

Falls es noch nicht funzt: Sauge Dir das “binary for Windows 64 bit (with large file support)” von
https://wiki.openstreetmap.org/wiki/Osmconvert#Windows
Im Moment zeigt der auf eine osmconvert64-0.8.8p.exe

Gar nicht, sondern “-v”, klein. Irnkwo mit rein mit einem Leerzeichen davor und dahinter.

–ks

Ich steh auf den Schlauch , ich mein Wo soll ich das in die Befehlszeile reinschreiben ?
Und was hat das für eine Auswirkung ?

denke !

gruss

osmconvert C:\MyOsmTopo\KARTEN-BAU\DATA\alps-latest.osm.pbf -v -b=…

Das produziert eine erweiterte (verbose) Ausagabe von osmconvert. Entweder findest Du darin die Ursache warum es nicht funktioniert, oder Du postest den Text hier.

damit hat es funktioniert !!!

Danke !

Gibt es das für 32 Bit Versionen auch ? Oder funktioniert es grundsätzlich mit 32 Bit ?

gruss

Da bin ich überfragt. Ich frage mich aber auch, warum es die kaputte Version immer noch gibt, ich habe das Problem schon Ende Oktober Markus Weber gemeldet. Er selbst hat kein Windows und kann daher die Programme wohl nicht bauen.

Zur Info: Ich habe mir mit Hilfe von MinGW 64-bit Windows binaries gebaut (1).
Ist ziemlich einfach: Den Installer mingw-w64-install.exe runterladen und alles mit Defaults installieren.
Das hat bei mir dieses Verzeichnis erzeugt:
**“c:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0” **
Dann einfach den source osmconvert.c runtersaugen von http://m.m.i24.cc/osmconvert.c, z.B. nach c:\temp
Dann in etwa das hier verwenden


"c:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw-w64.bat" 
cd /D  c:\temp
gcc osmconvert.c -lz -O3 -o osmconvert

Das Kommando entspricht weitestgehend dem im Wiki, allerdings muss man cc durch gcc ersetzen.
Damit hat man ein aktuelles osmconvert.exe in c:\temp
Funkioniert analog auch für osmfilter und osmupdate.
Wer ein passendes wget für Windows hat, kann auch die Abkürzung verwenden:


wget -O - http://m.m.i24.cc/osmconvert.c | gcc -x c - -lz -O3 -o osmconvert 

(1) https://sourceforge.net/projects/mingw-w64/

Hallo , wie du ja richtig erkannt hast, mit dieser Version osmconvert64-0.8.8p.exe hat es ja funktioniert .
Da ich nicht so der Freak bin , erzeugst du da eine noch aktuellere version ?

Und wenn ja kannst oder würdest du die zu Verfügung stellen ?

gruss

Wie oben beschrieben frisch gebaut:
https://1drv.ms/f/s!AlCS9BnQgWzijn9MTdBnSQIcwGi1

ciao,
Gerd

Danke !!! Das ist ein Service !!!

Was ist osmfilter.exe und osmupdate.exe

gruss

https://wiki.openstreetmap.org/wiki/Osmfilter
https://wiki.openstreetmap.org/wiki/OsmUpdate

ergänzende Frage , kann man den Inhalt des cmd Fenster auslesen oder kopieren beim erstellen der Karte ?

gruss

@mapguru, hattest Du GerdP’s Version auch erfolgreich getestet?
(weiss nicht ob der yadi.sk Link vertrauenswürdig ist)

Ja, 2 Möglichkeiten:

  1. Copy&Paste aus dem cmd-Window
  2. Die Befehle in eine Textdatei umleiten (osmconvert … > ausgabe.txt)

Bei mir ist es so, dass die Version von GerdP leider nicht funktioniert


c:\>osmconvert64.exe alps-latest.osm.pbf -B=border.poly --complete-ways -o=my.osm.pbf
osmconvert Error: could not rewind file: alps-latest.osm.pbf  

c:\>osmconvert64.exe -h

osmconvert 0.8.10  Parameter Overview
(Please use  --help  to get more information.)
…


Die Variante osmconvert64-0.8.8p.exe von der URL https://yadi.sk/d/Vnwc4kut3LCBFm funktioniert hingegen mit den selben Parametern und Dateien.

Grüße
Andreas

Hallo Andreas,
danke für den Hinweis. Ich schaue mal, ob ich das beheben kann. Bis dahin habe ich die Dateien entfernt.

Gerd

Hm, das geht über meinen Horizont. Anscheinend ist die zlib in der Mingw 64 Umgebung nicht so gebaut, wie es das Wiki beschreibt. Kann Sie aber anscheinend mit Mingw auch nicht selber bauen. :frowning:
Leider weiss ich auch nicht, wie man den Autor der funktionierenden Version osmconvert64-0.8.8p.exe erreichen kann. Im Wiki taucht der Name Esaulenka auf, aber es gibt keinen entsprechenden OSM user.

Edit: Tippfehler

Noch zur Info: Zum Testen kann man folgendes Kommando verwenden:

osmconvert -b=8.39,52.8,8.5,53  --complete-ways -o=extract.osm.pbf germany-latest.osm.pbf

Sollte ein kleines Rechteck mit etwa 1.4 MB ausschneiden.
Wenn nach einiger Zeit folgende Meldung kommt, dann funzt osmconvert nicht mit Dateien > 2GB

osmconvert Error: could not rewind file: germany-latest.osm.pbf                                   

Als ich damals mein eigenes osmconvert gebaut habe, hat die “offizielle” Windows 64Bit version gar nicht mit --complete-ways funktioniert, es kam immer eine leere Datei raus. Die von mir gebaute Version funktioniere dann. Da habe ich dann nicht mehr mit großer Datei getestet. Sorry!

Ich lasse ja mit einer .bat das Splitten laufen , dann öffnet das cmd und man sieht wie die Befehle abgearbeitet werden.
Diesen Inhalt möchte ich euch gerne zeigen , aber ich schaffe es nicht oder steh auf den schlauch .
Wenn ich am ende der Patch Datei eine Pause setze, schließt das cmd nicht gleich und ich kann ansehen was alles passiert ist nur wie bekomme ich den Inhalt des cmd kopiert ?
Copy funktioniert nicht da ich nichts im cmd markieren kann .

danke für eure Hilfe !

gruss