Ubuntu 64-bitowe Machinarium: błąd podczas ładowania bibliotek współdzielonych: libgtk-x11-2.0.so.0 [zamknięte]

31

Właśnie pobrałem końcową wersję 64-bitową Ubuntu 13.10 i każdy program, którego używam, działa bezbłędnie, z wyjątkiem bardzo fajnej gry flash „Machinarium”. Gra nie ma pakietu .deb i wcześniej mogłem w nią grać. Próbowałem zainstalować lib32 i ia32 i mówi, że jest zainstalowany do ostatniej wersji lub jeśli spróbuję lib32-dev, to mówi, że nie jest już dostępny. Oto wynik mojej komendy ldd:

fz@Unknown:~/Games/Machinarium$ ldd Machinarium
    linux-gate.so.1 =>  (0xf77c8000)
    libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf76c0000)
    libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf76a5000)
    libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf756f000)
    libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf755c000)
    libXt.so.6 => /usr/lib/i386-linux-gnu/libXt.so.6 (0xf7500000)
    libfreetype.so.6 => /usr/lib/i386-linux-gnu/libfreetype.so.6 (0xf7461000)
    libfontconfig.so.1 => /usr/lib/i386-linux-gnu/libfontconfig.so.1 (0xf7427000)
    libgtk-x11-2.0.so.0 => not found
    libgdk-x11-2.0.so.0 => not found
    libatk-1.0.so.0 => not found
    libgdk_pixbuf-2.0.so.0 => not found
    libpangocairo-1.0.so.0 => not found
    libpango-1.0.so.0 => not found
    libcairo.so.2 => not found
    libgobject-2.0.so.0 => /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 (0xf73d3000)
    libgmodule-2.0.so.0 => /usr/lib/i386-linux-gnu/libgmodule-2.0.so.0 (0xf73ce000)
    libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf73c9000)
    libglib-2.0.so.0 => /lib/i386-linux-gnu/libglib-2.0.so.0 (0xf72c4000)
    libnss3.so => not found
    libsmime3.so => not found
    libssl3.so => not found
    libplds4.so => not found
    libplc4.so => not found
    libnspr4.so => not found
    libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7280000)
    libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf7263000)
    libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf70b0000)
    libXrender.so.1 => /usr/lib/i386-linux-gnu/libXrender.so.1 (0xf70a4000)
    /lib/ld-linux.so.2 (0xf77c9000)
    libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf7083000)
    libSM.so.6 => /usr/lib/i386-linux-gnu/libSM.so.6 (0xf707a000)
    libICE.so.6 => /usr/lib/i386-linux-gnu/libICE.so.6 (0xf7060000)
    libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xf7046000)
    libexpat.so.1 => /lib/i386-linux-gnu/libexpat.so.1 (0xf701c000)
    libffi.so.6 => /usr/lib/i386-linux-gnu/libffi.so.6 (0xf7015000)
    libpcre.so.3 => /lib/i386-linux-gnu/libpcre.so.3 (0xf6fd4000)
    libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf6fd0000)
    libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf6fc9000)
    libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xf6fc2000)
Fonz
źródło
Edytuj swoje pytanie i określ, co się stanie, gdy spróbujesz uruchomić grę. Proszę zamieścić pełny komunikat o błędzie, jeśli taki istnieje.
MadMike,
fz @ Nieznany: ~ / Games / Machinarium $ '/ home / fz / Games / Machinarium / Machinarium' / home / fz / Games / Machinarium / Machinarium: błąd podczas ładowania bibliotek współdzielonych: libgtk-x11-2.0.so.0: nie można otwórz plik współdzielonego obiektu: Brak takiego pliku lub katalogu
Fonz
Powinieneś być w stanie zrobić, sudo apt-get install packagename:i386aby brakujące biblioteki uzyskały wersje 32-bitowe (AFAIK) (chociaż nie gwarantuje to, że odpowiednie wersje bibliotek są nadal dostępne).
chronitis
Pakiet ia32-libs: i386 nie jest dostępny, ale odwołuje się do niego inny pakiet. Może to oznaczać, że brakuje pakietu, został on przestarzały lub jest dostępny tylko z innego źródła. Jednak następujące pakiety go zastępują: lib32z1 lib32ncurses5 lib32bz2-1.0
Fonz
1
„Ubuntu 13.10 końcowy beta 64-bitowy”, czy próbowałeś ze stabilnym?
Braiam

Odpowiedzi:

70

najwyraźniej musisz zainstalować pakiet libgtk2.0-0: i386.

sudo apt-get install libgtk2.0-0:i386
AdamOutler
źródło
2
To nie jedyny potrzebny pakiet. @Nothor wymienił wszystkie potrzebne pakiety, a gra działała dla mnie. sudo apt-get install libgtk2.0-0:i386 libnss3:i386 libcurl3-gnutls:i386 libidn11:i386 libpango1.0-0:i386 libpangox-1.0-0:i386 libpangoxft-1.0-0:i386 librtmp0:i386 libxft2:i386
Mina Michael,
@MinaMichael te inne biblioteki zostaną automatycznie dodane do listy instalacji przez mechanim zależności.
m3nda
Aktualizacja. Gra nie działa 18.04. librtmp0:i386Nie można zainstalować pakietu . Gra daje ten błąd:error while loading shared libraries: libXt.so.6: cannot open shared object file: No such file or directory
Mina Michael
9

Istnieją 2 opcje uruchomienia Machinarium na Ubuntu 13.10 64bits .

Pakiet Deb

Jeśli mamy pakiet .deb (i tak! Jest to pakiet 32-bitowy ).

Musisz zainstalować go z Centrum Oprogramowania Ubuntu ( nie używając dpkg -i), więc po prostu kliknij dwukrotnie plik.

Aby usunąć grę

sudo dpkg -r machinarium 

Wersja TAR.GZ

Jeśli masz wersję tar.gz.

Musisz zainstalować wszystkie te biblioteki.

sudo apt-get install libgtk2.0-0:i386 libnss3:i386 libcurl3-gnutls:i386 libidn11:i386 libpango1.0-0:i386 libpangox-1.0-0:i386 libpangoxft-1.0-0:i386 librtmp0:i386 libxft2:i386

Uruchom go na STEAM

W obu przypadkach, jeśli chcesz uruchomić go ze STEAM jako BRAK gry Steam, musisz zainstalować również tę ostatnią bibliotekę.

sudo apt-get install libxtst6:i386
Nic
źródło
0

Mam tutaj ten sam problem. To nie jest dokładnie rozwiązanie, ale spróbuję dodać trochę informacji.

Próbowałem rozwiązania @AdamOutler, ale po zainstalowaniu libgtk2.0-0:i386potrzebne były inne zależności, które rozwiązałem instalując libnss3:i386i gtk2-engines-murrine:i386. Problem polegał na tym, że następny krok wymagał wywołania pakietu, unity-gtk2-module:i386który zależy od tego, unity-gtk-module-common:i386który już nie istnieje.

Porzuciłem to podejście i stwierdziłem, że mogę zainstalować grę bezpośrednio z Software Center (tak jak kupiłem ją z Humble Bundle). Działa jak urok! Szaloną częścią jest to, że nie ma widocznej różnicy między instalacjami (.TGZ vs .DEB) - pliki w folderze wyglądają tak samo (użyte filei md5sumpolecenia do sprawdzenia).

Oto lista zależności od zainstalowanego pakietu: libatk1.0-0 (>= 1.12.4), libc6 (>= 2.4), libcairo2 (>= 1.2.4), libfontconfig1 (>= 2.8.0), libfreetype6 (>= 2.2.1), libgcc1 (>= 1:4.1.1), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.12.0), libgtk2.0-0 (>= 2.24.0), libnspr4 (>= 1.8.0.10), libnss3 (>= 3.12.0~1.9b1), libpango1.0-0 (>= 1.14.0), libstdc++6 (>= 4.1.1), libx11-6, libxext6, libxrender1, libxt6, libcurl3-gnutls

Ostatnią rzeczą jest zasugerowanie, aby spróbować uruchomić program uruchamiający grę, ponieważ nadal nie mam sukcesu, rozpoczynając grę od bash.

Nigini
źródło