Первоначально это была проблема с Steam на Ubuntu 15.04 / 15.10. Пары объединяют старые библиотеки и сталкиваются с драйверами mesa, поэтому закрытые драйверы не видят этой проблемы. Обновление. Возможно также, что вам не хватает некоторых вещей. См. Другой ответ mchid.
Существует ошибка ошибки в github Steam .
Текущее обходное решение заключается в удалении старой версии lib, по крайней мере до тех пор, пока клапан не зафиксирует проблему в своем сценарии запуска или что-то в этом роде.
Итак, введите эти папки и сделайте это (игнорируйте x86_64
, если у вас есть только 32-битная система):
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
Если у вас проблемы с каталогом выше, вы должны попробовать следующее:
У некоторых людей есть .steam/steam/ubuntu12_32
, у других - только .steam/ubuntu12_32
. Если у вас нет этих папок, найдите правильное местоположение, проверив, где ваш пар ищет профиль пользователя:
$ fgrep config= /usr/games/steam
config=$HOME/.steam
Используйте это, чтобы найти ваше местоположение в lib:
[config value] + /ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu
|
\-> $HOME/.steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu
Это сработало для меня ... но, пожалуйста, обратите внимание, что если в какой-то игре требуется, чтобы старая библиотека была запущена во время работы в Steam, она может упасть (вот почему клапан должен это исправить)
Редактировать 2015-08-22:
Поскольку у Steam теперь есть ссылка в $HOME/.steam/root
, которая всегда указывает на правильный каталог установки Steam, эта команда должна работать для всех, и это проще для быстрого исправления:
find $HOME/.steam/root/ubuntu12_32/steam-runtime/*/usr/lib/ -name "libstdc++.so.6" -exec mv "{}" "{}.bak" \; -print
Кроме того, помните, что при каждом обновлении во время работы в Steam вам, вероятно, потребуется запустить это.
Изменить 2016-02-16:
Также см. ниже ответ mchid , просто выполните:
sudo apt-get install libgl1-mesa-dri libgl1-mesa-dri:i386
может быть достаточно, чтобы исправить это.
Изменить 2016-10-23:
Для ubuntu 16.10 команда была обновлена, чтобы удалить больше файлов, которые разбивают драйверы mesa, поэтому эта новая команда должна работать:
find $HOME/.steam/root/ubuntu12_32/steam-runtime/*/usr/lib/ \( -name "libstdc++.so.6" -o -name "libgpg-error.so.0" -o -name "libxcb.so.1" -o -name "libgcc_s.so.1" \) -exec mv "{}" "{}.bak" \; -print
Для драйверов с закрытым исходным кодом NVIDIA , см. ответ Винсента ниже. Р>
Изменить 2017-01-08:
Вероятно, окончательное редактирование, последнее обновление парольного linux должно исправить большинство, если не все проблемы! в конце концов! : D р>
Изменить 2017-08-03:
К сожалению, возвращение из отпуска показало, что некоторые недавние обновления снова разошлись.
Поэтому, если вы получите это при запуске, сразу после загрузки обновления:
process 23148: arguments to dbus_connection_ref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2688.
, а затем паровой крах, тогда вы нажимаете это bug , сообщается как нефатальный, но он парит пар на тех же дистрибутивах. обходной путь:
ln -s ${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libdbus-1.so.3 ${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32/libdbus-1.so.3
удача