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?


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


27

Das hat bei mir funktioniert:

sudo apt-get install libsdl1.2debian:i386


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.


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

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

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.