Ich habe einen Debian-Sid-Gast in Virtualbox (auf einem Debian-Host) laufen, wo ich das steam
Paket aus dem non-free
Repository installiert habe.
Beim Versuch, es auszuführen steam
, erhalte ich die folgenden Fehlermeldungen:
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
Ich habe einige andere Beiträge zu dieser Fehlermeldung gefunden (zB"Steam öffnet sich nicht in Ubuntu 16.04 LTS") ... aber keine davon handelt von Virtualbox und sie enthalten keine Antworten, die mein Problem beheben. Ich habe auch versucht, die .deb
von der Steam-Website bereitgestellte Datei zu verwenden und bin auf dasselbe Problem gestoßen.
Die meisten anderen „Lösungen“ im Internet schlagen Folgendes vor:
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
... und dann steam
so ausgeführt: LD_PRELOAD='/usr/$LIB/libstdc++.so.6' DISPLAY=:0 steam
... aber nichts davon funktioniert bei mir, und ich erhalte den gleichen Fehler, auch nachdem ich die Bibliotheken aus dem Steam-Verzeichnis entfernt habe. firmware-amd-graphics
und libgl1-mesa-dri
andere 3D-Rendering-Bibliotheken sind installiert und funktionieren sowohl auf dem Host als auch auf dem Gast ordnungsgemäß, sodass das Problem nicht dadurch verursacht wird.
Ich denke, das Problem könnte tatsächlich damit zu tun haben, dass VirtualBox diese virtuelle Grafikkarte für die Gäste verwendet. Wenn ich sie lspci
aus dem Gast heraus ausführe, wird diese Grafikkarte angezeigt:
00:02.0 VGA compatible controller: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter
Die tatsächliche Grafikkarte, wie auf dem Host angezeigt, ist:
Advanced Micro Devices, Inc. [AMD/ATI] Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445] (rev c1)
welches die amdgpu
Treiber verwendet.
Ich kann online keine Lösungen finden, die sich speziell mit der Ausführung steam
unter Debian befasseninnerhalb von Virtualbox... Weiß jemand, was ich tun muss, um diesen Fehler zu beheben und Steam in einer VM zum Laufen zu bringen?
Antwort1
Ich hatte damit Probleme und bei mir hat es funktioniert. Sie müssen Steam sozusagen folgendermaßen vorbereiten:
Geben Sie in Ihrem Terminal diese Befehle ein:
cd ~/.local/share/Steam/ubuntu12_32/
./steam
Führen Sie außerdem Folgendes aus:
steam
ein paar Mal, um es zum Laufen zu bringen, wenn es beim ersten Mal einfriert, einfach Strg+C,
Beim zweiten Versuch sollte es klappen.
Antwort2
Ich habe die Lösung für mein Problem gefunden. Grundsätzlich benötigt der Steam-Client für Linux 32-Bit-Bibliotheken, um ausgeführt zu werden, und die Standardinstallation für Debian unterstützte nur die 64-Bit-Architektur.
Um dies zu beheben, habe ich mit einer neuen VM (ohne installiertes Steam) begonnen und dann die folgenden Befehle ausgeführt, um Unterstützung für 32-Bit-Bibliotheken (i386) hinzuzufügen:
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install steam
Und jetzt funktioniert alles!