私はVirtualbox (Debian ホスト上) で Debian Sid ゲストを実行しており、リポジトリsteam
からパッケージをインストールしましたnon-free
。
を実行しようとするとsteam
、次のエラーが発生します。
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
このエラーメッセージに関する他の投稿もいくつか見つけました(例:「Ubuntu 16.04 LTS で Steam が開かない「) ... しかし、どれも VirtualBox に関するものではなく、私が抱えている問題を解決する答えがありませんでした。また、.deb
Steam Web サイトから提供されたファイルを使用しようとしましたが、同じ問題が発生しました。
オンライン上の他の「解決策」のほとんどは、次のことを行うことを提案しています。
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
...そして、steam
次のように実行します: LD_PRELOAD='/usr/$LIB/libstdc++.so.6' DISPLAY=:0 steam
...しかし、どれも機能せず、Steam ディレクトリからライブラリを削除した後でも同じエラーが発生します。firmware-amd-graphics
、libgl1-mesa-dri
その他の 3D レンダリング ライブラリはホストとゲストの両方にインストールされ、正しく動作しているので、それが問題の原因ではありません。
問題は、VirtualBox がゲスト用にこの仮想ビデオ カードを使用しているという事実と実際に関係があるのではないかと思います。lspci
ゲスト内から実行すると、次のグラフィック カードが表示されます。
00:02.0 VGA compatible controller: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter
ホストに表示される実際のビデオ カードは次のとおりです。
Advanced Micro Devices, Inc. [AMD/ATI] Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445] (rev c1)
ドライバーを使用しますamdgpu
。
steam
Debianでの実行に特化したソリューションをオンラインで見つけることができませんVirtualbox内... このエラーを修正し、VM 内で Steam を実行するには何をすればよいか知っている人はいますか?
答え1
私はこれに問題を抱えていましたが、これがうまくいきました。次のようにして蒸気を準備する必要があります。
ターミナルで次のコマンドを入力します。
cd ~/.local/share/Steam/ubuntu12_32/
./steam
また、以下を実行します:
steam
数回実行して、最初はフリーズした場合はCtrl+Cを押してください。
2回目の試行で動作するはずです。
答え2
問題の解決策を見つけました。基本的に、Linux 用の Steam クライアントを実行するには 32 ビット ライブラリが必要ですが、Debian のデフォルト インストールでは 64 ビット アーキテクチャのみがサポートされていました。
これを修正するために、新しい VM (Steam がインストールされていない) から開始し、次のコマンドを実行して 32 ビット (i386) ライブラリのサポートを追加しました。
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install steam
そして、すべてが今機能しています!