So, hab mir per
gcc -m32 -o osmfilter32 osmfilter.c
'ne 32Bit-Variane selbst erzeugt, gleicher Fehler
Liegt wohl nicht am 64 Bit, eher am Debian ↔ Ubuntu Unterschied.
Witzigerweise funktioniert ein “osmconvert32” aus “gcc -m32 osmconvert.c -o osmconvert32 -lz”.
Schön, nur darf man nicht vergessen, dass aufgrund der Datenmenge man gewaltigen I/O hat.
Meine (verschlüsselte) Festplatte braucht schon für das Anlegen einer “leeren” 1,6 GB Datei mehr als eine Minute,
time dd if=/dev/zero of=blub bs=M count=1600
1600+0 Datensätze ein
1600+0 Datensätze aus
1677721600 Bytes (1,7 GB) kopiert, 67,2015 s, 25,0 MB/s
real 1m10.118s
user 0m0.012s
sys 0m14.729s
und “zuvor” wollen die 2,3 GB erst mal eingelesen sein.
Hallo Frank,
Weißt du, wo der Fehler aufgetreten ist? Kannst du eventuell mal mit dem Debugger schauen? Falls du keinen grafischen installiert hast, kann ich “nemiver” ganz besonders empfehlen.
Was mir noch eingefallen ist, vielleicht gibts immer noch Probleme mit der 4-GB-Grenze… Magst du mal eine Änderung versuchen?
Von:
#if __WIN32__
#define NL "\r\n" // use CR/LF as new-line sequence
#define off_t off64_t
#define lseek lseek64
#else
#define NL "\n" // use LF as new-line sequence
#define O_BINARY 0
#endif
nach:
#define off_t off64_t
#define lseek lseek64
#if __WIN32__
#define NL "\r\n" // use CR/LF as new-line sequence
#else
#define NL "\n" // use LF as new-line sequence
#define O_BINARY 0
#endif
Reading symbols from /home/user/tmp/osmfilter_debug...done.
warning: Can’t read pathname for load map: Eingabe-/Ausgabefehler.
Reading symbols from /lib32/libc.so.6…(no debugging symbols found)…done.
Loaded symbols for /lib32/libc.so.6
Reading symbols from /lib/ld-linux.so.2…(no debugging symbols found)…done.
Loaded symbols for /lib/ld-linux.so.2
Core was generated by `./osmfilter_debug --drop-ways --drop-relations baden-wuerttemberg.osm’.
Program terminated with signal 11, Segmentation fault. #0 0x08050ad7 in oo__findbb () at osmfilter.c:4000
4000 c= *bufsp;
(gdb) bt #0 0x08050ad7 in oo__findbb () at osmfilter.c:4000 #1 0x080514ce in oo_main () at osmfilter.c:4340 #2 0x08054402 in main (argc=0, argv=0xffe26250) at osmfilter.c:5180
(gdb)
ich möchte selbst eine aktuelle Datei mit bounds erstellen um sie dann ich mkgmap zu nutzen?
Ich hoffe ich bin hier richtig
Der andere Befehl
marko@marko-desktop:~/Dokumente/osmosis$ osmconvert germany.osm.pbf --out-o5m >germany.o5m
osmconvert: Befehl nicht gefunden.
marko@marko-desktop:~/Dokumente/osmosis$
Hast du es denn mal mit dem hier besprochenen Programm osmfilter versucht? Deine Befehlszeilen sind ja allesamt für osmosis oder osmconvert. Wobei das Programm osmconvert im Verzeichnis von Osmosis sicher nicht bekannt ist wie die Fehlermeldung auch zeigt.
Falls es Dich interessiert. Hier steht wie ich es mache und wenn Du es nicht unbedingt selbst filtern willst, kannst Du Dir die aktuellen Bounds wöchentlich runterladen http://mkgmap.osm4people.org/
Klar geht das nicht:
osmfilter&osmconvert sind eigenständige (C-)Programme und haben mit dem (java-)osmosis nüchts zu tun.
Ausser den ersten 3 Buchstaben
Hallo
Danke für die Infos
die von Navmaps habe ich vom 21 Januar
Das sind ca. 2 GB groß
Ich lad mal die 225 MB ich denke mal Deutschland.
Ich dachte das das hier für osmosis war ?
Was bräuchte ich denn?
Mit der osmconvert Linux 32 bib kann ich nichts anfangen ( wählen sie eine Anwendung aus ? )
Gibt es wo eine Seite wo man das nachlesen kann wie die europa bound erstellt werden ( halbwegs verständlich )
ich würde das gerne für meine LKW Karte selbst machen wollen.
Beste Grüße
Es müssten also alle drin sein. Wie weit runter mkgmap beim Auswerten geht, weiß ich nicht. Morgen oder übermorgen gibts neue…nur falls Du warten willst.