Если я нажму на настольное приложение "Steam", ничего не произойдет.
Бегущий steam в терминале выдает следующее:
STEAM_RUNTIME is enabled automaticallyInstalling breakpad exception handler for appid(steam)/version(1474415843)libGL error: No matching fbConfigs or visuals foundlibGL error: failed to load driver: swrast
Что интересно, так это то, что если я изменю свой драйвер графического процессора на xorg, это работает отлично.
Что я могу сделать, чтобы это сработало? Он перестал работать после последнего обновления steam (36 часов назад).
Я попытался удалить nvidia - sudo apt-get remove nvidia* и переустановил драйвер, но безуспешно.
Ubuntu 16.04+Для тех, кто все еще получает ту же ошибку, если вы используете драйвер nvidia, иногда вы увидите, что libGL.so.1 указывает на неоднозначный libGL, предоставляемый как mesa, так и nvidia. Чтобы проверить это, вы можете выполнить следующую команду
Подсистема Windows для Linux (WSL) имеет ту же ошибку
В подсистеме Windows для Linux (WSL) под Windows 10 есть файл /usr/lib/i386-linux-gnu/mesa/libGL.so.1 не существует. Вместо этого есть файл /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 кажется, он заменяет его. Однако, если вы удалите файл замены, библиотека вообще не будет работать.
Переименовать библиотеку, а затем переименовать обратно решает проблему
Если вы переименуете файл, а затем переименуете его обратно, ошибки исчезнут, и он будет работать намного быстрее:
───────────────────────────────────────────────────────────────────────────────rick@alien:/mnt/e/etc$ lock-screen-timerLinux version 4.4.0-43-Microsoft (Microsoft@Microsoft.com) (gcc version 5.4.0 (GCC) ) #1-Microsoft Wed Dec 31 14:42:53 PST 2014libGL error: No matching fbConfigs or visuals foundlibGL error: failed to load driver: swrastGtk-Message: GtkDialog mapped without a transient parent. This is discouraged.───────────────────────────────────────────────────────────────────────────────rick@alien:/mnt/e/etc$ sudo ldconfig -p | grep -i gl.so libwayland-egl.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 libcogl.so.20 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcogl.so.20 libQt5OpenGL.so.5 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQt5OpenGL.so.5 libGL.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 libEGL.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/mesa-egl/libEGL.so.1───────────────────────────────────────────────────────────────────────────────rick@alien:/mnt/e/etc$ sudo rm /usr/lib/i386-linux-gnu/mesa/libGL.so.1rm: cannot remove '/usr/lib/i386-linux-gnu/mesa/libGL.so.1': No such file or directory───────────────────────────────────────────────────────────────────────────────rick@alien:/mnt/e/etc$ sudo mv /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.ORIGINAL───────────────────────────────────────────────────────────────────────────────rick@alien:/mnt/e/etc$ lock-screen-timerLinux version 4.4.0-43-Microsoft (Microsoft@Microsoft.com) (gcc version 5.4.0 (GCC) ) #1-Microsoft Wed Dec 31 14:42:53 PST 2014/usr/bin/zenity: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory───────────────────────────────────────────────────────────────────────────────rick@alien:/mnt/e/etc$ sudo mv /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.ORIGINAL /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1───────────────────────────────────────────────────────────────────────────────rick@alien:/mnt/e/etc$ lock-screen-timerLinux version 4.4.0-43-Microsoft (Microsoft@Microsoft.com) (gcc version 5.4.0 (GCC) ) #1-Microsoft Wed Dec 31 14:42:53 PST 2014Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.───────────────────────────────────────────────────────────────────────────────rick@alien:/mnt/e/etc$
Я убедился, что изменение является постоянным, т.Е. Закройте окно терминала WSL и откройте новое окно.
Что использует библиотеку?
Библиотека используется yad в блокировка экрана-таймер скрипт bash обновлен с гибридной поддержкой WSL в дополнение к Ubuntu. Яд - это развилка Zenity вот почему вы видите Зенит, подобный Gtk-Message: ссылка в третьем сообщении об ошибке выше.
Вот что такое yad окно выглядит так же, как в Ubuntu (в WSL оно немного отличается):
В моем случае проблема заключалась в том, что я включил некоторые источники CUDA apt, которые установили драйвер и инструменты 440 nvidia. Как только я отключил это и установил последнюю на тот момент версию драйвера nvidia (435), он установил все остальное необходимое, и ошибка исчезла.