Fehler beim Laden der gemeinsam genutzten Bibliotheken libSDL-1.2.so.0

18

Ich versuche, ioquake auf meinem Ubuntu-Server zu installieren.

Wenn ich versuche, es auszuführen, erhalte ich folgende Meldung:

# ./ioquake3
./ioquake3.x86_64: error while loading shared libraries: libSDL-1.2.so.0: cannot open shared object file: No such file or directory

Ich dachte, ich hätte alles richtig gemacht. Hier ist die libSDL:

# cd /usr/lib64
# /usr/lib64# ls -l
total 2308
lrwxrwxrwx 1 root root      15 Oct 15 00:25 libSDL-1.1.so.0 -> libSDL-1.2.so.0
lrwxrwxrwx 1 root root      20 Oct 15 00:25 libSDL-1.2.so.0 -> libSDL-1.2.so.0.11.4
-rwxr-xr-x 1 root root 2358903 Jan 19  2012 libSDL-1.2.so.0.11.4

Und mein Weg:

# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib64

Was mache ich falsch?

ErocM
quelle
3
Ich denke, dass dies eine Nachricht von libSDL ist und nicht von libSDL. Rennen strace ./ioquake.x86_64. Dies zeigt alle Systemaufrufe an (die Ausführung dauert viel länger). Es wird angezeigt, welcher Versuch, welche Datei zu öffnen, fehlschlägt.
Januar
Ich habe trace installiert. Wenn ich es gerade hochlaufe, bekomme ich die Hilfe. Wenn ich strace ./ioquake.x86_64 ausführe, wie Sie vorgeschlagen haben, wird der Befehl nicht gefunden. Ich bekomme Kopfschmerzen :(
ErocM
Ich habe strace *
ErocM
Von der Openarena FAQ , erscheint diese Meldung , wenn libSDL nicht installiert ist, so dass ich es nicht glaube , kam von ihm. Nicht die beste Idee, aber um sicher zu gehen, haben Sie versucht, libSDL-1.2.so.0.11.4 in libSDL-1.2.so.0 umzubenennen?
NorTicUs
Auch wenn die erste für Sie funktioniert hat: Bitte markieren Sie die zweite (23 positive Stimmen) als Antwort, da sie für 99% der Menschen tatsächlich richtig ist.
Tatsu

Antworten:

10

Versuchen Sie Folgendes im Terminal:

sudo apt-get update

gefolgt von

sudo apt-get install --reinstall libsdl1.2debian

Veröffentlichen Sie alle Fehlermeldungen, die Sie möglicherweise sehen

Anonym
quelle
27

Das hat bei mir funktioniert:

sudo apt-get install libsdl1.2debian:i386

Joril
quelle
1
Dies ist die bessere Antwort. Dies sollte als Antwort markiert werden.
Tatsu
2

Ich weiß, das ist ein Jahr zu spät. Aber das sollte es beheben:

dpkg --add-architecture i386
sudo apt-get install libsdl1.2debian

Das Problem ist, dass Sie ein Programm ausführen, das für eine 32-Bit-Architektur mit 64-Bit-Bibliotheken kompiliert wurde.

Douther
quelle
4
Alternativsudo apt-get install libsdl1.2debian:i386
Joril
1
@Joril Ich denke, Ihr Kommentar sollte eine Antwort für sich sein
Alter Lagos
1
sudo apt-get install libsdl1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev
Jagadeesh
quelle
3
Können Sie eine Erklärung hinzufügen, was das Problem ist und wie das Ausführen des obigen Befehls es lösen würde?
Mostafa Ahangarha
Tatsächlich verwendet die Benutzeranwendung die obige Bibliothek, um Text oder Bilder im SDL-Fenster
abzulegen
Ich meine, fügen Sie der Antwort eine Erklärung bei. Dennoch denke ich, dass diese Erklärung nicht ausreicht.
Mostafa Ahangarha