Po instalacji sterownika Nvidia, gdy próbuję uruchomić Steam, pojawia się ten błąd:
steam: error while loading shared libraries: libGL.so.1: wrong ELF class: ELFCLASS64
Znalazłem to pytanie i jedną z odpowiedzi sugerujących instalację:
sudo apt-get install libgl1-mesa-glx:i386
Już zainstalowałem libgl1-mesa-glx:i386
. Niż znalazłem to . Sugeruje utworzenie dowiązania symbolicznego do 32-bitowej biblioteki libGL. Jak to zrobić? Czy masz jakieś inne sugestie?
sudo aptitude install libgl1-mesa-glx:i386
przedstawia 305 pakiety zostaną usunięte i 100 będą rozwiązane. Ponieważ wygląda na to, że zapełni mój system, podejrzewam, że najlepszym rozwiązaniem jest uruchomienie systemu Ubuntu z podwójnym uruchomieniem z 64 bibliotekami i biblioteką 32-bitową, lub lepiej, jednym podstawowym systemem dla większości rzeczy, jedną instalacją 64-bitową dla gier i instancją 32-bitową własną partycję dla gier 32-bitowych.Odpowiedzi:
Ten problem w systemach 64-bitowych jest spowodowany tym,
/usr/lib
że jest wcześniejszyLD_LIBRARY_PATH
niż/usr/lib32
. Steam wypróbowuje 64-bitowe biblioteki i narzeka, nie szukając dalej.Można to jednak naprawić,
~/Steam/steam.sh
ale plik wydaje się przywracany do oryginalnej wersji przy każdym uruchomieniu Steam.Naprawiłem to, tworząc skrypt, który to robi:
To poprzedza
/usr/lib32
ścieżkę do biblioteki, a następnie uruchamia steam (z oryginalnymi argumentami skryptu). Teraz/usr/lib32
znajduje się na ścieżce wcześniej/usr/lib
, a steam z powodzeniem użyje bibliotek 32-bitowych.Możesz także dodać linię
do
/usr/bin/steam
, będzie mieć taki sam skutek, jak długo, jak dodać go przed ostatniej linii. Musisz edytować sudo/usr/lib/steam
./usr/bin/steam
prawdopodobnie zostanie zastąpione, gdy para zostanie zaktualizowana.Używam tej drugiej metody, zachowując skrypt jako kopię zapasową. W ten sposób, jeśli
/usr/bin/steam
zostanie zastąpiony, mogę po prostu skopiować ponownie wklej wiersz ze skryptu, aby go naprawić.źródło
Naprawiono to w raring ringtail (xubuntu 13.04) ze sterownikami nVidia 319.17 poprzez dodanie
/usr/lib32
do nowego pliku:następnie uruchomiony:
Ponieważ plik
/etc/ld.so.conf
zawierainclude /etc/ld.so.conf.d/*.conf
, każdy plik w tym katalogu z rozszerzeniem.conf
jest analizowany.źródło
Od: https://github.com/ValveSoftware/steam-for-linux/issues/321
Mam ten sam problem i rozwiązałem go, wykonując następujące czynności:
To również działało dla mnie.
źródło
Naprawiono to dla Mint 14 z najnowszymi 64-bitowymi sterownikami Nvidia 310.32 z zainstalowaną obsługą 32-bitowych sterowników
poprzez dodanie
Po pierwszym
"export"
na początku/usr/bin/steam
pliku.źródło
Natknąłem się na ten sam problem, ale ze skype . Wszystkie powyższe rozwiązania (tworzenie dowiązań symbolicznych, konfigurowanie LD_LIBRARY_PATH) nie działały dla mnie.
W końcu znalazłem pomoc we wspomnianym już poście - ale z innym rozwiązaniem.
Wygląda na to, że aktualizator nvidia (pytając o pozwolenie na zainstalowanie bibliotek kompatybilności z 32-bitową biblioteką OpenGL) pomylił się i usunął
/usr/lib/i386-linux-gnu/mesa/libGL.so.1
i/usr/lib/i386-linux-gnu/mesa/libGL.so
.Ponowna instalacja biblioteki libgl1 pomogła:
sudo apt-get install --reinstall libgl1-mesa-glx:i386
źródło
Jeśli używasz wersji beta ograniczonej do Steam dla Linuksa, zamieściłbym to na forach Steam dla Linuksa . Powinni mieć lepszą pomoc, a jeśli jest to problem z samym oprogramowaniem, programiści będą mogli to naprawić. Ponadto, jeśli używasz 64-bitowego systemu operacyjnego, istnieje wiele osób, które prawdopodobnie przeszły przez twoje problemy, a zatem wiedzą dokładnie, co zrobić.
źródło
Miałem dokładnie ten sam problem na 64-bitowej wersji Linux Mint Debian Edition 2.
Rozwiązałem to przez ponowną instalację sterowników NVIDIA z 32-bitowymi bibliotekami GL (po instalacji tych bibliotek zażądano steam).
Zakładam tylko, że zainstalowanie tych innych 32-bitowych bibliotek graficznych zepsuło pewne połączenia, a ponowna instalacja sterowników NVIDIA z tymi prawdziwymi bibliotekami 32-bitowymi rozwiązuje problem z łączeniem.
źródło
Miałem ten problem ze Skype. Naprawiłem to, instalując ponownie oficjalny sterownik Nvidia i instalując 32-bitową bibliotekę kompatybilności podczas instalacji.
źródło