Ошибка запуска Steam в гостевой системе Virtualbox: «Ошибка libGL: не удалось загрузить драйвер: swrast»

703
J. Taylor

У меня есть гость Debian Sid, работающий в Virtualbox (на хосте Debian), где я установил steamпакет из non-freeрепозитория.

Когда я пытаюсь запустить steam, я получаю следующие ошибки:

libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast 

Я нашел несколько других сообщений, касающихся этого сообщения об ошибке (например, « Steam не открывается в Ubuntu 16.04 LTS » ) ... но ни одно из них не касается virtualbox, и у них нет ответов, которые решают проблему, с которой я столкнулся. Я также попытался использовать .debфайл, предоставленный на веб-сайте Steam, и столкнулся с той же проблемой.

Большинство других «решений» онлайн предлагают сделать следующее:

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 ... Кто-нибудь знает, что мне нужно сделать, чтобы исправить эту ошибку, и запустить пар в виртуальной машине ?

0

2 ответа на вопрос

1
Ethan Hemingway

У меня были проблемы с этим, и это сработало для меня, вы должны подготовить пар, выполнив это:

В своем терминале введите эти команды:

cd ~/.local/share/Steam/ubuntu12_32/  ./steam 

также запустите:

steam 

пару раз, чтобы запустить его, если он зависает в первый раз просто Ctrl + C,

Это должно работать со второй попытки.

Хотя это может ответить на вопрос, было бы лучше ответить, если бы вы могли дать какое-то объяснение ** почему ** это так. DavidPostill 5 лет назад 0
Вы должны предварительно подготовить steam, потому что команда "steam" этого не делает, почти как его компиляция Ethan Hemingway 5 лет назад 0
0
J. Taylor

Я нашел решение своей проблемы. По сути, для запуска клиента Steam для Linux требуются 32-битные библиотеки, а установка по умолчанию для Debian поддерживает только 64-битную архитектуру.

Чтобы это исправить, я начал с новой виртуальной машины (без установленного Steam), а затем выполнил следующие команды, чтобы добавить поддержку для 32-битных (i386) библиотек:

sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get dist-upgrade sudo apt-get install steam 

И все работает сейчас!

Похожие вопросы