osmconvert startet nicht mehr für linux 32 bit

Hi,

Ja, kann man – ist aber eher was für erfahrene Leute.

Weide

Was ist denn “Rechner/bin”?

Ich hab keine Ahnung, wo Du jetzt noch osmconvert32 liegen hast. Mach doch mal:

sudo find / -name osmconvert32 -exec ls -l {} ;

und zeige das Ergebnis einschließlich des eingegebenen Befehls.

Weide

… und Du machst tapfer weiter mit den nachfolgenden Befehlen - und versuchst was zu verschieben, was gar nicht erstellt wurde.

Der Download hat funktioniert, da gab es keine Fehler. Der Compiler hat mit einem Fehler abgebrochen, da ein Development Paket zu zlib auf Deinem Rechner fehlt. Ich würde an Deiner Stelle aber statt dem selber Compilieren eher den Download Link aus dem Wiki verwenden (http://m.m.i24.cc/osmconvert32) - Dir fehlen schlicht massiv zu viele Grundlagen.

Vorgehensweise nun:

  1. Vorschlag von Weide annehmen: Suche alle Stellen, an denen Du nun noch ein “osmconvert*” liegen hast. Und bitte löschen - Dein bisheriges Chaos gehört dringend entsorgt.
  2. Download des Linux Binaries von osmconvert32.
  3. Verschiebe das nach “/usr/local/bin/osmconvert32” und setze die executable Flags (root-Rechte erforderlich).
  4. Nun kannst Du “osmconvert32 --help” aufrufen.

Und: Niemals eine Datei nach “/bin/” oder “/usr/bin/” verschieben - das ist Deiner Paketverwaltung vorbehalten. Eigenes kommt nach “/usr/local/bin/” (dann systemweit verfügbar) oder nach “~/bin/” (dann nur für Dich - das Anlegen hiervon habe ich bereits beschrieben).

Hallo

Download osmconvert32

Dann nach Rechner/user/local/bin mit root rechten kopiert (sonnst ging es nicht)

Zugriffsrechte gesetzt ( Datei als Programm ausführen )

Test aus Desktop ergibt das ?

marko@marko-desktop:~$ osmconvert32 --help
bash: /usr/local/bin/osmconvert32: Datei oder Verzeichnis nicht gefunden
marko@marko-desktop:~$ 

Der Suchbefehl gibt das aus :

marko@marko-desktop:~$ sudo find / -name osmconvert32 -exec ls -l {} \;
[sudo] password for marko: 
-rwxrwxr-x 1 marko root 226858 Jun 27 10:38 /usr/local/bin/osmconvert32
-rwxr-xr-x 1 marko marko 204887 Mär  4  2012 /home/marko/Dokumente/mkgmapkopie/osmconvert32
-rwxrwxr-x 1 marko marko 226858 Jun 21 13:21 /home/marko/Dokumente/mkgmapb/osmconvert32
-rwxrwxr-x 1 marko marko 226858 Jun 21 13:21 /home/marko/Dokumente/mkgmapf/osmconvert32
-rwxrwxr-x 1 marko marko 226858 Jun 21 13:21 /home/marko/Dokumente/mkgmap letzte stabile Version 24.06.2013/osmconvert32
-rwxr-xr-x 1 marko marko 226858 Jun 21 13:21 /home/marko/Dokumente/mkgmap/osmconvert32
-rwxrwxrwx 1 marko sudo 226858 Jun 27 10:38 /home/marko/Dokumente/mkgmapo/osmconvert32
-rwxrwxr-x 1 marko marko 226858 Jun 21 13:21 /home/marko/Dokumente/mkgmapk/osmconvert32
-rwxrwxr-x 1 marko marko 226858 Jun 21 13:21 /home/marko/Dokumente/mkgmap3d/osmconvert32
-rw-rw-r-- 1 marko marko 226858 Jun 27 10:38 /home/marko/Downloads/osmconvert32
-rwxr-xr-x 1 root root 226858 Jun 21 13:21 /bin/osmconvert32
marko@marko-desktop:~$ 

Da wo meine Karten sind ( Wie gesagt was immer ging / habe schon mal ein BUG gepostet auf Launchpad )

Gruß

Du hast ganz elegant den ersten Schritt von Joachim übersprungen…

edit: Noch schnell den Crosspost verlinken: http://forum.ubuntuusers.de/topic/osmconvert-startet-nicht/
Die Lösung steht übrigens bereits dort: http://forum.ubuntuusers.de/topic/osmconvert-startet-nicht/#post-5733737

edit2: Zeig uns mal bitte ein

$ uname -a

Dann schätze ich, dass

ldd /bin/osmconvert32

irgendwo ein

...=> not found

liefert.

Weide

Hallo
Hier das uname -a

marko@marko-desktop:~$ uname -a
Linux marko-desktop 3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6 20:47:07 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
marko@marko-desktop:~$

Das andere bringt:

marko@marko-desktop:~$ ldd /bin/osmconvert32
	Das Programm ist nicht dynamisch gelinkt
marko@marko-desktop:~$ 

Lese grade das selber bauen. (Da steht aber nichts ?)

Das ist die Suche jetzt:

marko@marko-desktop:~$ sudo find / -name osmconvert32 -exec ls -l {} \;
-rwxrwxr-x 1 marko root 226858 Jun 27 10:38 /usr/local/bin/osmconvert32
marko@marko-desktop:~$

Nur eine.

Das ist der Test aus Desktop mit nur einer osmconvert32 :

marko@marko-desktop:~$ osmconvert32 --help
bash: /usr/local/bin/osmconvert32: Datei oder Verzeichnis nicht gefunden
marko@marko-desktop:~$

Sieht mir immer noch nach einem BUG aus?

Gruß

Jetzt bin ich baff. Weiter oben steht eine Dateilänge dieser Datei von 226858 Byte. Das ist genau die Länge der dynamisch gelinkten Datei zum Downloaden (bei http://wiki.openstreetmap.org/wiki/DE:Osmconvert#Download)) und ldd liefert mir die Abhängigkeiten für diese frisch runtergeladene Datei.

Weide

Nein, kein Bug. Du nutzt ein 64 bit System, die Datei wurde aber für 32 bit kompiliert. Ich weiß nicht, ob es ausreichend ist, das Paket ia32-libs zu installieren, da die Datei statisch gelinkt wurde. Es sollte also wirklich am besten sein, sich osmconvert selbst zu kompilieren. Installier dir zuerst zlib1g-dev, damit du die Header-Dateien davon hast. Anschließend kannst du den o.g. Befehl zum Kompilieren ausführen.

Hallo

Die Abfolge von oben lief jetzt durch ohne Fehler.

Der Help Befehl bringt ganz viel, dass ist nur ein Ausschnitt:

marko@marko-desktop:~$ osmconvert32 --help

osmconvert 0.7R

This program reads different file formats of the OpenStreetMap
project and converts the data to the selected output file format.
These formats can be read:
  .osm  .osc  .osc.gz  .osh  .o5m  .o5c  .pbf
These formats can be written:
  .osm (default)  .osc  .osh  .o5m  .o5c  .pbf

Names of input files must be specified as command line parameters.
Use - to read from standard input. You do not need to specify the
input formats, osmconvert will recognize them by itself.
The output format is .osm by default. If you want a different format,
please specify it using the appropriate command line parameter.

-b=<x1>,<y1>,<x2>,<y2>
        If you want to limit the geographical region, you can define
        a bounding box. To do this, enter the southwestern and the
        northeastern corners of that area. For example:
        -b=-0.5,51,0.5,52

-B=<border_polygon>
        Alternatively to a bounding box you can use a border polygon
        to limit the geographical region.
        The format of a border polygon file can be found in the OSM
        Wiki: http://wiki.openstreetmap.org/wiki/Osmosis/
              Polygon_Filter_File_Format
        You do not need to strictly follow the format description,
        you must ensure that every line of coordinates starts with
        blanks.

--complete-ways
        If applying a border box or a border polygon, all nodes
        the borders are excluded; even then if they belong to a way
        which is not entirely excluded because it has some nodes
        inside the borders.
        This option will ensure that every way stays complete, even
        it it intersects the borders. This will result in slower
        processing, and the program will loose its ability to read
        from standard input. It is recommended to use .o5m format as
        input format to compensate most of the speed disadvantage.

Ich werde Montag mal versuchen wieder eine normale Karte zu bauen.

Im Versuch konnte ich den Help Befehl auch in Dokumente/mkgmapo ausführen gleiche Ausgabe.

Beste Grüße

Logisch. Du hast das Programm jetzt für die Architektur deines Rechners kompiliert. Deswegen läuft das Programm jetzt. Außerdem hast du es so gespeichert, dass es im PATH liegt (in dieser Variablen stehen alle Programmpfade und wenn du ein Programm aufrufen möchtest, dann wird dort drin gesucht). Deswegen kannst du es jetzt von jedem Ort aus aufrufen.

Hallo

Test heute:

marko@marko-desktop:~$ cd Dokumente/mkgmapf
marko@marko-desktop:~/Dokumente/mkgmapf$ osmconvert32 f-nl-b-l.osm.pbf --out-o5m >f-nl-b-l.o5m
marko@marko-desktop:~/Dokumente/mkgmapf$ 

Lief ohne Fehlermeldung

Es geht jetzt nur ohne den Punkt und Schrägstrich vor osmconvert32

./

das musste ich weglassen.

Da kann ich mit leben, muss jetzt alle meine automatischen Befehle korrigieren.
damit das in geplante-Aufgaben wieder geht.

Besten Dank für die Hilfe

So nun habe ich nur das Problem mit osmfilter32

Vermutlich müsste ich da auch so eine Download installation machen für 64 bit ?

So habe mal das versucht:

marko@marko-desktop:~$ cd ~
marko@marko-desktop:~$ mkdir bin
mkdir: das Verzeichnis »bin“ kann nicht angelegt werden: Die Datei existiert bereits
marko@marko-desktop:~$ cd bin
marko@marko-desktop:~/bin$ wget -O - http://m.m.i24.cc/osmfilter.c | cc -x c - -lz -O3 -o osmfilter
--2013-07-02 10:15:48--  http://m.m.i24.cc/osmfilter.c
Auflösen des Hostnamen »m.m.i24.cc (m.m.i24.cc)«... 80.67.17.148, 2a00:1158:0:300:432f::1
Verbindungsaufbau zu m.m.i24.cc (m.m.i24.cc)|80.67.17.148|:80... verbunden.
HTTP-Anforderung gesendet, warte auf Antwort... 200 OK
Länge: 213497 (208K) [text/plain]
In »»STDOUT«« speichern.

100%[======================================>] 213.497      483KB/s   in 0,4s   

2013-07-02 10:15:48 (483 KB/s) - auf die Standardausgabe geschrieben [213497/213497]

<stdin>: In Funktion »rr__flush«:
<stdin>:3022:8: Warnung: Der Rückgabewert von »write«, der mit dem Attribut warn_unused_result deklariert wurde, wird ignoriert [-Wunused-result]
marko@marko-desktop:~/bin$ mv osmfilter osmfilter32
marko@marko-desktop:~/bin$ chmod u+x osmfilter32
marko@marko-desktop:~/bin$ cd ~
marko@marko-desktop:~$ 

Ich habe es hinbekommen jetzt geht was

marko@marko-desktop:~$ cd ~/Dokumente/mkgmapf
marko@marko-desktop:~/Dokumente/mkgmapf$ osmfilter32 f-nl-b-l.o5m --keep-nodes= --keep-ways-relations="boundary=administrative =postal_code postal_code=">f-nl-b-l-boundaries.osm
marko@marko-desktop:~/Dokumente/mkgmapf$ 

Lief jetzt auch ohne Fehler
Beste Grüße

Klaro, das war ja der Sinn der Übung.

**./**abc bedeutet ja: "starte das Programm abc, daß sich hier befindet. Der Punkt ist das Synonym für “aktuelles Verzeichnis”. Ähnlich wie “ein Verzeichnis oberhalb” bedeutet (cd …)

Gruss
walter

Hallo

So nach der Umstellung geht alles wieder.

Nur es geht nur manuell / wenn ich in Gnome Schedule auf " Aufgabe ausführen klicke"
Automatisch nach Zeitsteuerung geht es nicht ?

Ich starte immer mit Gnome Schedule die Aufgaben in einer Zeitfolge.

Für osmconvertstart nutze ich das ? das liegt natürlich im Verzeichnis bin


#!/bin/sh
cd ~/Dokumente/mkgmap
osmconvert32 d-dk.osm.pbf --out-o5m >d-dk.o5m

der alte code war immer:


#!/bin/sh
cd ~/Dokumente/mkgmap
./osmconvert32 d-dk.osm.pbf --out-o5m >d-dk.o5m

Hallo

Habe es

Habe die mit dem Code erstellte osmconvert32 in die jeweiligen Verzeichnisse (mkgmap) kopiert

Jetzt startet es auch mit Gnome Schedule nach Zeitsteuerung.

mit dem alten code:


#!/bin/sh
cd ~/Dokumente/mkgmap
./osmconvert32 d-dk.osm.pbf --out-o5m >d-dk.o5m

Nun habe ich wieder 5 mal osmconvert32 - aber das macht nix.

Beste Grüße

Das liegt einfach nur daran, dass das Programm - warum auch immer - nicht im path war. Also einfach den absoluten Pfad nutzen (das Gleiche gilt übrigens auch für das Home-Verzeichnis - bei sowas lieber den absolute Pfad nehmen).

Hallo

System abgestürzt

osmconvertstart32 geht schon nur startet osmfilter32 nicht mehr?

marko@marko-desktop:~$ cd Dokumente/mkgmap
marko@marko-desktop:~/Dokumente/mkgmap$ osmfilter32 deu-dnk-aut-che.o5m --keep-nodes= --keep-ways-relations="boundary=administrative =postal_code postal_code=">deu-dnk-aut-che-boundaries.osm
bash: /home/marko/bin/osmfilter32: Datei oder Verzeichnis nicht gefunden
marko@marko-desktop:~/Dokumente/mkgmap$ 

Beste Grüße

Da steht eine Ausgabe, die “/home/marko/bin/osmfilter32” Dir hinterlassen hat. Das funktioniert & startet also. Dein “osmfilter32” scheint nur die von Dir angegebene Datei nicht zu finden: Die Datei “deu-dnk-aut-che.o5m” findet sich im Verzeichnis “~/Dokumente/mkgmap/”?

Das ist es ja :
Die Datei ist in dem Verzeichnis, ich habe sie ja vorher mit osmconvert erstellt.
Beste Grüße

nö, nicht unbedingt. bash gibt diese Meldung auch aus, wenn die Datei /home/marko/bin/osmfilter32 gar nicht existiert oder für die falsche Architektur compiliert wurde. Steht aber alles schon hier im Thread. Bitte nochmal komplett durchlesen!!

osmfilter würde sich mit “osmfilter Error: could not open input file: some_unknown_file.o5m” melden.