SDB:Programmausführung schlägt fehl

aus openSUSE, der freien Wissensdatenbank


Version: 6.4

Symptom

Sie haben SuSE Linux neu installiert und versuchen ein älteres Programm auszuführen. Obwohl Sie sogar probiert haben das Progamm mit

./programmname

im gleichen Verzeichnis aufzurufen erscheint die Fehlermeldung

bash: ./programmname: No such file or directory

Ursache und Analyse

Dieser Fehler wird in der Regel von einem nicht vorhandenen Programminterpreter verursacht. Überprüfen Sie bitte mit dem Kommando

objdump --full-contents --section=.interp ./programmname

welchen Linker dieses Programm benötigt. Sollte die Fehlermeldung:

objdump: ./programmname: File format not recognized

erscheinen so handelt es sich um eine Skriptsprache deren in der ersten Zeile des Programms angegebener Interpreter nicht gefunden wird. Überprüfen Sie die Programmdatei dann mit einem Texteditor und passen Sie den Pfad im Programm an bzw. installieren Sie die entsprechende Interpretersprache nach. Erscheint eine Ausgabe der Art:

./programmname:     file format elf32-i386
Contents of section .interp:
 80480f4 2f6c6962 2f6c642d 6c696e75 782e736f  /lib/ld-linux.so
 8048104 2e3100                               .1.

so handelt es sich um ein libc5 Programm das den dynamischen Linker ld-linux.so.1 zur Ausführung benötigt. Falls dieser nicht installiert ist, kommt es zu der oben genannten Fehlermeldung.

Abhilfe

Installieren Sie mit yast aus der Serie `a' das Paket `shlibs5' nach.