
Ich habe gerade das Humble Double Fine Bundle gekauft und die .bin-Datei heruntergeladen, und dort steht, dass es das Mojo-Installationsprogramm verwendet.
Beim Versuch, das Installationsprogramm zu öffnen, wird folgende Fehlermeldung angezeigt:
jeggy@jeggy-XPS:~/Niðurtøkur$ sudo ./CostumeQuest-Linux-2013-05-07-setup.bin
./CostumeQuest-Linux-2013-05-07-setup.bin: error while loading shared libraries: libbz2.so.1: cannot open shared object file: No such file or directory
Ich habe gegoogelt und das hier gefunden:
Und das sieht genau wie mein Problem aus, aber der Link ist jetzt tot :/
Ich verwende Ubuntu 13.04 64bit
BEARBEITEN:
Es heißt, ich habe libbz2-1.0 installiert
jeggy@jeggy-XPS:~/Niðurtøkur$ sudo apt-get install libbz2-1.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
libbz2-1.0 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
ldd:
jeggy@jeggy-XPS:~/Niðurtøkur$ ldd ./CostumeQuest-Linux-2013-05-07-setup.bin
linux-gate.so.1 => (0xf77a9000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7769000)
libbz2.so.1 => not found
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf7763000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7720000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf756d000)
/lib/ld-linux.so.2 (0xf77aa000)
jeggy@jeggy-XPS:~$ sudo find / -name libbz2.so.1
[sudo] password for jeggy:
/home/jeggy/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libbz2.so.1
/lib/x86_64-linux-gnu/libbz2.so.1
Es hat sehr lange gedauert, bis ich eine Antwort auf diesen Befehl bekam.
Antwort1
Einfache Möglichkeit, den Fehler zu beheben
sudo find / -name libbz2.so.1
Die Ausgabe ist
/var/cache/lxc/centos/x86_64/6/rootfs/lib64/libbz2.so.1
/var/cache/lxc/raring/rootfs-amd64/lib/x86_64-linux-gnu/libbz2.so.1
/var/lib/lxc/centos/rootfs/lib64/libbz2.so.1
/var/lib/lxc/container/rootfs/lib/x86_64-linux-gnu/libbz2.so.1
/var/lib/lxc/juju/rootfs/lib/x86_64-linux-gnu/libbz2.so.1
/var/lib/lxc/client/rootfs/lib/x86_64-linux-gnu/libbz2.so.1
/lib/x86_64-linux-gnu/libbz2.so.1
/lib/i386-linux-gnu/libbz2.so.1
Dann müssen Sie einfach diese Lib libbz2.so.1 laden, bevor Sie sie ausführen
Für 32-Bit-App
LD_PRELOAD=/lib/i386-linux-gnu/libbz2.so.1 ./CostumeQuest-Linux-2013-05-07-setup.bin
Wenn das funktioniert, überprüfen Sie einfach diese AntwortSkype stürzt mit einem Segmentierungsfehler ab
ODER
sudo ln -s /lib/i386-linux-gnu/libbz2.so.1 /usr/lib32/
sudo ldconfig -v
Führen Sie dann das Setup aus
Aktualisieren
Erstellen Sie eine Datei
sudo gedit /etc/ld.so.conf.d/hib.conf
Kopieren Sie die folgende Zeile und fügen Sie sie ein
/home/jeggy/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/
/lib/x86_64-linux-gnu/
/lib/i386-linux-gnu/
Speichern und beenden und dann den folgenden Befehl ausführen
sudo ldconfig -v
Führen Sie abschließend das Setup aus
sudo ./CostumeQuest-Linux-2013-05-07-setup.bin
Gelöst mit Google + Bildschirmfreigabe
sudo cp /home/jeggy/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libbz2.so.1.0.4 /usr/lib/libbz2.so.1
sudo ldconfig -v
Führen Sie abschließend das Setup aus
sudo ./CostumeQuest-Linux-2013-05-07-setup.bin
Antwort2
Stellen Sie sicher, dass Sie in /usr/lib* nachsehen.32* Ordner zum Erstellen des symbolischen Links (und der Bibliothek in diesem Ordner, nicht aus dem Lib-Ordner, da dieser 64 Bit ist).
Das Installationsprogramm scheint 32-Bit zu sein (was offensichtlich ist, wenn man sich die Ausgabe von ldd ansieht). Nachdem ich einen zusätzlichen symbolischen Link zu libbz2.so.1 im lib32-Ordner erstellt hatte, lief die Installation problemlos. (obwohl es einige weitere Ausnahmemeldungen spammte)
Antwort3
Sie können libbz2 wie folgt installieren
sudo apt-get install libbz2-1.0
Antwort4
Öffnen Sie ein Terminal und cd
navigieren Sie zum Download-Verzeichnis. Geben Sie ein:
chmod u+x *filename*
Drücken Sie die Eingabetaste und geben Sie dann ein:
./*filename*
Weitere Einzelheiten: Dies funktioniert unter Ubuntu 13.04 x64 und ich habe die Dateinamen einfach OHNE ERWEITERUNGEN eingegeben (also ohne .bin usw.).
Dadurch sollte die Installationsaufforderung im Terminal geöffnet werden.