[Linux] Wie "no such file or directory" auflösen [solved]

OP #7440580
Lesenswert?

Hallöchen,

folgendes Problem. Es gibt da ein Programm, das sich mit

1
No such file or directory

verabschiedet. Normalerweise wird es aus einer GUI heraus ausgeführt, d.h. an einem falschen Aufruf liegt es nicht.

Eine ähnliche Situation hatte ich schon einmal, dabei hat mir strace die Sicht verstellt, denn die ausgeführte "Anwendung" war nur ein Skript, dass nach ksh gefragt hat, was nicht installiert war. -> Gleicher Fehler.

Aber jetzt handelt es sich definitiv um ein kompiliertes Programm und ich dachte mit strace würde ich herausbekommen auf welche Datei zugegriffen werden soll. Klappt aber nicht. (verbose liefert auch nicht mehr.)

1
strace program
2
execve("/path/to/the/executable/bin/program", ["program"], 0x7ffd5e62b230 /* 67 vars */) = -1 ENOENT (No such file or directory)
3
strace: exec: No such file or directory
4
+++ exited with 1 +++

Ich vermute es fehlt irgendein Paket.

Hat jmd weitere Ideen, wie ich der Datei/Bibliothek auf die Schliche komme?

Danke,

ts

OP #7440606
Lesenswert?

Niklas G. schrieb:

Wahrscheinlich ist die Programmdatei gar nicht auf dem System ausführbar, z.B. weil sie für eine andere Architektur kompiliert wurde. Ggf. hilft das installieren von 32/64 bit libraries für die benötigte Architektur.

Darauf wird es wohl hinauslaufen. Ich musste der Datei auch erst noch etwas hinterherlaufen, weil es sich um einen SymLink handelte. Aber nachdem ich den aufgelöst hatte, konnte ich mir sicher sein, dass die Ausgaben passen.

Benutz mal "file programmdatei" und "ldd programmdatei" und "objdump -f programmdatei".`

1
$ file program
2
program: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, BuildID[sha1]=f6aaff89144be508306dc56d14f4807ab997a953, for GNU/Linux 2.6.32, stripped
3

4
$ ldd program
5
  not a dynamic executable
6

7
$ objdump -f program
8
program:     file format elf32-i386
9
architecture: i386, flags 0x00000112:
10
EXEC_P, HAS_SYMS, D_PAGED
11
start address 0x0804ce78

Jack V. schrieb:

Mit den Daten, die du rauszensiert hast. Wenn man wüsste, um welches Programm es denn geht, könnte man schauen, wovon es abhängt und wo es seine Komponenten erwartet.

Würde es sich um ein Open Source Programm handeln, hätte ich das schon mit angegeben.

Danke für die Hilfe, Problem solved.

#7440615
Lesenswert?

Niklas G. schrieb:

Wie das jetzt?

Statisch gebautes 32Bit-Binary auf’m 64Bit-System, wohl.

Schotter schrieb:

Würde es sich um ein Open Source Programm handeln, hätte ich das schon mit angegeben.

Auch bei Closed Source darf man in der Regel Namen, Pfade und weitere Informationen angeben, um den Leuten die Unterstützung zu erleichtern. Noch besser ist aber im Fall proprietärer Software, den Support ihres Anbieters zu kontaktieren.

OP #7440636
Lesenswert?

Niklas G. schrieb:

Schotter schrieb:

Problem solved.

Wie das jetzt?

32-Bit Bibliotheken nachinstalliert. Jetzt lässt es sich immerhin ausführen. Die "GUI" wirft noch die gleiche Fehlermeldung, aber da vermute ich jetzt eher nicht erfüllte Abhängigkeiten. Ein yum install *.i686 wollte ich nicht lostreten. Jetzt wird's eben fisselig.

Niklas G. schrieb:

Ja, aber das sollte man prinzipiell schon auch starten können. Braucht ja nichtmal den dynamischen Linker. 32bit Support im Kernel deaktiviert?

Nope, es läuft AlmaLinux8, RHEL-Klon.

Jack V. schrieb:

Noch besser ist aber im Fall proprietärer Software, den Support ihres Anbieters zu kontaktieren.

Da kommt als erstes die Frage, ob auch RHEL oder SuSE im Einsatz ist. Das muss ich verneinen und dann heißt's "Pech gehabt".

#7440642
Lesenswert?

Schotter schrieb:

$ file program program: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, BuildID[sha1]=f6aaff89144be508306dc56d14f4807ab997a953, for GNU/Linux 2.6.32, stripped $ ldd program not a dynamic executable

Die Ausgabe finde ich merkwürdig. file meint, es sei dynamisch gelinkt, ldd sagt genau das Gegenteil.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren