Steam nie otwiera się w Ubuntu 16.04 LTS


102

Nigdy nie korzystałem z Ubuntu ani żadnego innego systemu operacyjnego Linux przed ostatnim piątkiem. Z tego co wiem, mogłem źle zainstalować Ubuntu i brakuje mi komponentu. Wolę, jeśli użyjesz najprostszej terminologii, ale w razie potrzeby mogę trochę googlować. Właśnie zainstalowałem Steam dla Ubuntu 16.04, ale nie otworzy się, kiedy kliknę go w programie uruchamiającym. Ikona miga przez kilka sekund, zatrzymuje się, a następnie nic się nie dzieje. Spojrzałem na monitor systemu i widać tam parę, ale zakończenie procesu i próba ponownej próby nic nie robi. Słyszałem, że próba otwarcia aplikacji, które nie działają przez terminal, mówi ci, jaki jest błąd, więc spróbowałem i dostałem to:

Running Steam on ubuntu 16.04 64-bit
STEAM_RUNTIME is enabled automatically
Installing breakpad exception handler for appid(steam)/version(0)
libGL error: unable to load driver: radeonsi_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: radeonsi
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast

Proszę o pomoc Chcę tylko ponownie zagrać w CS: GO.


Wygląda na problem ze sterownikami. Z jakiego sterownika korzystasz i jakiej karty graficznej posiadasz? Znalazłem też: wiki.archlinux.org/index.php/Steam/... - Ma to coś wspólnego z darmowymi sterownikami AMD. Czy widzisz inne sterowniki, które możesz wybrać w „Sterownikach dodatkowych”?
Joakim Koed

Mój gówniany mały laptop Toshiba ma procesor APU AMD A4-5000 ze zintegrowaną kartą graficzną Radeon HD 8330. Niezbyt potężny. Jedynym sterownikiem w menu Dodatkowe sterowniki jest zastrzeżony sterownik dla procesorów AMD. Czy są jakieś alternatywne sterowniki, które by działały?
Never2MuchPizza

Nie jestem pewien co do tego GPU: / Ale sprawdziłbym link, jest kilka obejść.
Joakim Koed

Zatrzymało się po assert_20160820112154_1.dmp[8558]: file ''/tmp/dumps/assert_20160820112154_1.dmp'', upload yes: ''CrashID=bp-3f997128-c49b-4a1f-9f2f-9d7f82160819'' .
Casper

@ Never2MuchPizza w dniu 16.04, w przypadku większości procesorów graficznych AMD możesz użyć sterownika open source (ten zastrzeżony został porzucony), patrz help.ubuntu.com/community/RadeonDriver
qkrijger 10.10.16

Odpowiedzi:


158

Ten problem występuje tylko w systemie Ubuntu 16.04. W Ubuntu 16.10 zainstaluj steam:i386pakiet z wieloświatowego repozytorium Ubuntu (repozytorium jest domyślnie włączone) i większość problemów została naprawiona. Aby naprawić na Ubuntu 16.04:

  1. Zalecane rozwiązanie:

    Jeśli właśnie zainstalowałeś Steam, upewnij się, że Steam jest zamknięty i przejdź do ~/.steam/steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/i usuń link libstdc++.so.6.

    rm ~/.steam/steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6
    

    To wszystko, teraz powinno zacząć się bez problemu. Niech zrobi to aktualizacja. Po aktualizacji, jeśli komunikat jest taki sam (plik zostanie odtworzony po pierwszej aktualizacji), upewnij się, że Steam jest zamknięty i zrób to samo. Również jeśli masz system 64-bitowy, przejdź do ~/.steam/steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/i usuń libstdc++.so.6.

    rm ~/.steam/steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6
    rm ~/.steam/steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libstdc++.so.6
    
  2. W niektórych systemach libstdc++.so.6ciągle się odtwarza. W takim przypadku utwórz skrypt steam.shz uprawnieniami do wykonywania:

    #!/bin/bash
    export LD_PRELOAD='/usr/$LIB/libstdc++.so.6'
    export DISPLAY=:0
    steam
    

    Następnie zmień na pulpicie Steam Exec=wiersz na bezwzględną ścieżkę skryptu steam.sh. Za każdym razem, gdy chcesz zagrać w grę, otwórz najpierw steam ze zmodyfikowanym wpisem na pulpicie, a następnie uruchom grę od wewnątrz steam. Źródło: https://wirejungle.wordpress.com/2015/01/09/how-to-fix-broken-steam-linux-client-with-radeon-graphics-driver-workaround/


Zadziałało! Dlaczego ten plik powodował problemy?
Goldname

6
@Goldname Steam używa własnych bibliotek, aby być niezależnym od bibliotek systemowych. Jednak nie może zawierać wszystkiego (jak wszystkie sterowniki i więcej rzeczy), a sterowniki radeon używają libstdc ++. Więc plik, który jest nowszą wersją nie jest kompatybilny z wersją, która zawiera środowisko wykonawcze Steam. Usuwając ten plik, sprawisz, że będzie on szukał biblioteki twojego systemu zamiast jednego środowiska uruchomieniowego Steam.
Thanos Apostolou

Działa również w RocketLeague na Ubuntu 16.04.
jvriesem

Pracuje dla mnie. Uruchomione zostało okno „Aktualizacja Steam ...”. Dzięki!
marc-andre benoit

1
@ThanosApostolou Tak samo libGL errors - Musiałem uruchomić pierwsze polecenie stąd: steamcommunity.com/app/221410/discussions/0/412446292752412961/...
Enigma,

42

Zainstalowałem Steam z pakietem w repozytoriach Ubuntu, a nie plik .deb ze Steam. Najwyraźniej dostarczony pakiet Ubuntu został zmodyfikowany do pracy na Ubuntu.

  1. Usuń pakiet Valve:

    sudo apt purge steam-launcher
    
  2. Usuń repozytorium, jeśli nie zostało usunięte z pakietem:

    sudo rm /etc/apt/sources.list.d/steam.list
    
  3. Załaduj ponownie listę źródeł:

    sudo apt update
    
  4. Zainstaluj Steam z repozytoriów:

    sudo apt install steam
    

Aby uzyskać więcej informacji, zobacz: https://www.reddit.com/r/linux_gaming/comments/57clur/cant_run_steam_on_ubuntu_1610/


4
Działa dla mnie na Ubuntu 17.10.
Chofoteddy

Właśnie próbowałem tego również na Ubuntu 17.10 i to działa dla mnie.
dspacejs

Pracowałem też dla mnie
Tek

Ten sam problem naprawiono także w Elementary OS Loki
Michael Fulton

To po prostu działało dla mnie na PopOS (Ubuntu)
Tricky

26

Spróbuj tego :

cd $HOME/.steam/steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu
mv libstdc++.so.6 libstdc++.so.6.bak
cd $HOME/.steam/steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu
mv libstdc++.so.6 libstdc++.so.6.bak

1
To jest lepsza odpowiedź IMO. Zauważ, że te ścieżki były niepoprawne w Mennicy 18 (16.04). Powinno być /.steam/steam/ubuntu12_32/...(wcześniej zauważ dodatkowe /steam/na ścieżce /ubuntu12_32).
dhaupin

Kiedy po raz pierwszy tego spróbowałem, ścieżka była jak w twoim komentarzu, ale po świeżej instalacji nie ma w niej dodatkowego „/ steam /”. Dlaczego?
Igor V.

Tylko pierwsze 2 polecenia działały dla mnie 17.04, ale potem działała para. Dzięki.
Jesteśmy Borg

9

Coś, co zadziałało, to dodanie tej zmiennej środowiskowej przed plikiem wykonywalnym steam:

env LD_PRELOAD='/usr/$LIB/libstdc++.so.6' steam

Spróbuj uruchomić go w konsoli, sprawdź, czy działa.

Jeśli tak, możesz edytować skrót pulpitu Steam, aby uzyskać następujące polecenie:

env LD_PRELOAD='/usr/$LIB/libstdc++.so.6' /usr/bin/steam %U

zamiast starej wartości:

/usr/bin/steam %U

Podobnie możesz zaktualizować skrót na pulpicie CS: GO, aby mieć to polecenie:

env LD_PRELOAD='/usr/$LIB/libstdc++.so.6' steam steam://rungameid/730

Nie mam pojęcia, co robi, ale wydaje mi się, że to działa ...

Mam nadzieję, że to pomoże i mam nadzieję, że Valve to naprawi wkrótce !!


Ten pracował dla mnie z Ubuntu 17.10
Jonathan

2

Wysłany dziennik wskazuje, że sterownik karty graficznej nie został poprawnie zainstalowany.

Miałem podobny problem ze świeżą instalacją 16.04 Ponownie zainstalowałem sterownik karty graficznej

pierwsza odpowiedź na link poniżej Problemy z grafiką po zainstalowaniu Ubuntu 16.04 z grafiką NVIDIA


1

2019

Plik binarny Steam ma 32 bity. Najnowsze wersje sterowników Nvidia zrezygnowały z obsługi aplikacji 32-bitowych. Aby to naprawić w Ubuntu 18.04:

  1. sudo add-apt-repository ppa:graphics-drivers/ppa
  2. Uruchom nvidia-settingsi sprawdź wersję główną sterownika Nvidia. Mój, na przykład, to: Wersja sterownika NVIDIA: 430.26 (tak, 430)
  3. sudo apt install libnvidia-gl-{{MAJOR VERSION NUMBER}}:i386

Na przykład, będąc moją główną wersją sterownika Nvidia 430, moje polecenie skończyło się sudo apt install libnvidia-gl-430:i386

Ale Steam, poważnie, 32 bity .... ??



0

Zainstalowanie wersji Steam Solusa zamiast oficjalnej (.deb) naprawiło to dla mnie.

Najpierw usuń oficjalną wersję:

sudo apt purge steam-launcher

Następnie zainstaluj wersję Solus:

sudo snap install --edge solus-runtime-gaming
sudo snap install --devmode --edge linux-steam-integration

Teraz uruchom Steam z deski rozdzielczej.


0

Dla użytkowników Gentoo, którzy tu przybyli i chcą prostego rozwiązania, właśnie to zrobiłem.

Krok 1

Usunięto przestępców:

rm -i $(find ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/installed \
    -iname 'libstdc++*' -or -iname 'libgcc_s*')

Krok 2

Utwórz skrypt uruchamiania:

#!/bin/sh
export LD_PRELOAD=$(echo /usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/{,32/}{libstdc++.so.6,libgcc_s.so.1})
export DISPLAY=:0
/usr/bin/steam

Powoduje wiele błędów ostrzegających o „niewłaściwej klasie ELF”, ale je ignoruję. Zmień także ścieżkę dla zainstalowanej wersji gcc. Zachęcamy do poprawy (użyj gcc-config -L itp.)


0

Ubuntu 18.04: Po pomyślnym odinstalowaniu bieżącego Steam (cały katalog związany ze Steam) otwórz terminal i wpisz następujące polecenie, aby mieć świeżą i czystą instalację:

sudo add-apt-repository multiverse

Gdy masz rację, wynik powinien wyglądać następująco:

Komponent dystrybucji „multiverse” włączony dla wszystkich źródeł


Następnie zainstaluj parę ( za pomocą terminala jest to ważne, aby zobaczyć potencjalne komunikaty o błędach)

sudo apt install steam
sudo apt update

Po pomyślnym zakończeniu instalacji wystarczy wpisać steam

steam

Tutaj albo działa, a potem baw się dobrze! Lub masz następujący komunikat o błędzie:

tar: This does not look like a tar archive
xz: (stdin): File format not recognized
tar: Child returned status 1
tar: Error is not recoverable: exiting now
find: ‘/home/$USERNAME/.steam/ubuntu12_32/steam-runtime’: No such file or directory

Jeśli masz ten komunikat, nie poddawaj się i uruchom:

mkdir "/home/$USERNAME/.steam/ubuntu12_32/steam-runtime"

To powinno teraz działać!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.