Steam potrzebuje dużo 32-bitowych bibliotek z twojego systemu. Jeśli któregoś z nich brakuje, plik wykonywalny Steam ulegnie awarii.
W openSUSE możesz sprawdzić, który pakiet udostępnia określoną bibliotekę za pomocą polecenia zypper wp libpng12.so.0.
Na Ubuntu nie ma tak łatwego sposobu, ale ta strona dość dobrze wyjaśnia powyższy proces.
Pełna lista wymagana do uruchomienia Steam:
libGL.so.1
libX11.so.6
libXau.so.6
libXext.so.6
libXi.so.6
libXrandr.so.2
libXrender.so.1
libappindicator.so.1
libasound.so.2
libc.so.6
libcairo.so.2
libdbus-1.so.3
libdl.so.2
libfontconfig.so.1
libfreetype.so.6
libgcc_s.so.1
libgdk-x11-2.0.so.0
libgdk_pixbuf-2.0.so.0
libglib-2.0.so.0
libgobject-2.0.so.0
libgtk-x11-2.0.so.0
libm.so.6
libnspr4.so
libnss3.so
libnssutil3.so
libpango-1.0.so.0
libpangocairo-1.0.so.0
libpangoft2-1.0.so.0
libplc4.so
libpng12.so.0
libpthread.so.0
librt.so.1
libsmime3.so
libstdc++.so.6
libsteam.so
libxcb.so.1
libz.so.1
Jeśli chcesz szybko dowiedzieć się, czego brakuje, uruchom następujące polecenie:
strace -E LD_LIBRARY_PATH=/home/USERNAME/Steam/ubuntu12_32/ -e trace=open /home/USERNAME/Steam/ubuntu12_32/steam (zamień dwukrotnie USERNAME na nazwę swojego konta w systemie Linux)
To da ci wynik podobny do tego w jednym z ostatnich wierszy:
open("/home/user/Steam/ubuntu12_32/libspeex.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
Jeśli nie ma linii, po której nie wspomniano ENOENT, będziesz musiał przeszukać, który pakiet udostępnia bibliotekę współdzieloną (w tym przypadku libspeex.so.1) zgodnie z powyższym samouczkiem.
You might want to run 'apt-get -f install' to correct these: The following packages have unmet dependencies: ia32-libs : Depends: ia32-libs-multiarch libldap-2.4-2 : Breaks: libldap-2.4-2:i386 (!= 2.4.28-1.1ubuntu4.1) but 2.4.28-1.1ubuntu4.2 is to be installed libldap-2.4-2:i386 : Breaks: libldap-2.4-2 (!= 2.4.28-1.1ubuntu4.2) but 2.4.28-1.1ubuntu4.1 is to be installed E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).