Ich habe ein Problem mit einer gemeinsam genutzten Bibliothek namens libsdl. Was ich eigentlich versuche, ist, eine Spiel-Engine namens GCCG (Generic Collectible Card Game) zu starten. Alle notwendigen Pakete wurden für die Engine installiert, aber wenn ich den Befehl ./Mtg
ausführe es gibt mir folgendes:
./ccg_client:Fehler beim Laden von Shared Libraries:libSDL-1.2.so.0:Shared-Object-Datei kann nicht geöffnet werden:Datei oder Verzeichnis nicht vorhanden
Aus der Fehlermeldung geht hervor, dass die libSDL-Bibliotheken entweder nicht installiert sind oder nicht auf sie zugegriffen werden kann/sie sich falsch befinden. Nachdem ich meine Pakete mit dpkg --get-selections | grep libsdl
Ich habe herausgefunden, dass alle libSDL-Pakete installiert sind … um sicherzugehen, habe ich sudo apt-get purge
verwendet auf allen libSDL-Paketen und eine Neuinstallation auf allen libSDL-Paketen durchgeführt, das Ergebnis ist jedoch immer noch dasselbe.
Außerdem, wenn ich apt-file search libSDL-1.2.so.0
verwende , um die sogenannten „fehlenden Bibliotheken“ zu lokalisieren, erhalte ich als Ergebnis:
libsdl1.2debian:/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0
libsdl1.2debian:/usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0.11.3
So wie ich es mir vorstelle, sind sie da ... aber sie werden nicht geteilt?
Akzeptierte Antwort:
Ist das eine 32-Bit- oder eine 64-Bit-Binärdatei? (Sie können dies mit der Datei ./Mtg überprüfen).
Wenn dies eine 32-Bit-Binärdatei ist, benötigen Sie die 32-Bit-Version von libSDL, da Sie anscheinend x86_64 ausführen.