Steam: erro libGL: Nenhum fbConfigs ou visuals encontrado encontrou o erro libGL: falha ao carregar o driver: swrast

15

Se eu clicar no aplicativo da área de trabalho "Steam", nada acontece.

A execução de steam no terminal produz o seguinte:

STEAM_RUNTIME is enabled automatically
Installing breakpad exception handler for appid(steam)/version(1474415843)
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast

O que é interessante é que, se eu alterar meu driver de GPU para xorg , ele funcionará perfeitamente.

O que posso fazer para que funcione? Ele parou de funcionar após a última atualização de vapor (36 horas atrás).

Eu tentei desinstalar o nvidia - sudo apt-get remove nvidia* e reinstalar o driver, mas sem sorte.

    
por cbll 07.10.2016 / 15:16

2 respostas

28

Para qualquer um que ainda estiver recebendo o mesmo erro, se você estiver usando o driver nvidia, algumas vezes você verá que libGL.so.1 aponta para a libGL ambígua fornecida pela mesa e nvidia. Para testar isso, você pode executar este comando

$ sudo ldconfig -p | grep -i gl.so

A saída foi algo como:

    libwayland-egl.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libwayland-egl.so.1
    libftgl.so.2 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libftgl.so.2
    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
    libQtOpenGL.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
    libQtOpenGL.so.4 (libc6) => /usr/lib/i386-linux-gnu/libQtOpenGL.so.4
    libOpenGL.so.0 (libc6,x86-64) => /usr/lib/nvidia-378/libOpenGL.so.0
    libOpenGL.so (libc6,x86-64) => /usr/lib/nvidia-378/libOpenGL.so
    libGL.so.1 (libc6,x86-64) => /usr/lib/nvidia-378/libGL.so.1
    libGL.so.1 (libc6) => /usr/lib/i386-linux-gnu/mesa/libGL.so.1
    libGL.so.1 (libc6) => /usr/lib32/nvidia-378/libGL.so.1
    libGL.so (libc6,x86-64) => /usr/lib/nvidia-378/libGL.so
    libGL.so (libc6) => /usr/lib32/nvidia-378/libGL.so
    libEGL.so.1 (libc6,x86-64) => /usr/lib/nvidia-378/libEGL.so.1
    libEGL.so.1 (libc6) => /usr/lib32/nvidia-378/libEGL.so.1
    libEGL.so (libc6,x86-64) => /usr/lib/nvidia-378/libEGL.so
    libEGL.so (libc6) => /usr/lib32/nvidia-378/libEGL.so

Agora eu só precisava remover a biblioteca fornecida pela mesa e tudo funcionou perfeitamente.

$ sudo rm /usr/lib/i386-linux-gnu/mesa/libGL.so.1
    
por Zobayer Hasan 11.04.2017 / 09:49
3

O Windows Subsystem para Linux (WSL) tem o mesmo erro

No Windows subsistema para Linux (WSL) no Windows 10, o arquivo /usr/lib/i386-linux-gnu/mesa/libGL.so.1 não existe. Em vez disso, há o arquivo /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 parece substituí-lo. No entanto, se você excluir o arquivo de substituição, a biblioteca não funcionará.

Renomeie a biblioteca e renomeie novamente resolve o problema

Se você renomear o arquivo e depois renomeá-lo, os erros desaparecem e ele funciona muito mais rápido:

───────────────────────────────────────────────────────────────────────────────
rick@alien:/mnt/e/etc$ lock-screen-timer
Linux version 4.4.0-43-Microsoft ([email protected]) (gcc version 5.4.0 (GCC) ) #1-Microsoft Wed Dec 31 14:42:53 PST 2014
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Gtk-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.1
rm: 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-timer
Linux version 4.4.0-43-Microsoft ([email protected]) (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-timer
Linux version 4.4.0-43-Microsoft ([email protected]) (gcc version 5.4.0 (GCC) ) #1-Microsoft Wed Dec 31 14:42:53 PST 2014
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
───────────────────────────────────────────────────────────────────────────────
rick@alien:/mnt/e/etc$

Eu verifiquei que a mudança é persistente, isto é, feche a janela do terminal do WSL e abra uma nova janela.

O que está usando a biblioteca?

A biblioteca é usada por yad no lock-screen-timer script bash atualizado com suporte híbrido para WSL além do Ubuntu. Yad é um fork de Zenity , e é por isso que você vê a referência Gtk-Message: do tipo Zenity na terceira mensagem de erro acima.

Veja como é a janela yad no Ubuntu (na WSL é um pouco diferente):

    
por WinEunuuchs2Unix 19.11.2017 / 17:26
yii\base\ErrorException
Copied! Copy Stacktrace Search Stackoverflow Search Google Error

PHP Core Warning – yii\base\ErrorException

PHP Startup: Unable to load dynamic library 'memcached.so' (tried: /usr/lib/php/20190902/memcached.so (/usr/lib/php/20190902/memcached.so: undefined symbol: igbinary_serialize), /usr/lib/php/20190902/memcached.so.so (/usr/lib/php/20190902/memcached.so.so: cannot open shared object file: No such file or directory))

$_GET = [
    'id' => '11751',
    'url' => 'steam-libgl-error-no-matching-fbconfigs-or-visuals-found-libgl-error-failed-t',
];

$_COOKIE = [
    '_csrf-frontend' => 'd50c58b4f8fbf2d6ef70d7857c10b018a56e99559c48096521e10a7d413d01e9a:2:{i:0;s:14:"_csrf-frontend";i:1;s:32:"fyPBxV2GLhR2pDHaemqKf7sT_T3i5dAD";}',
    'advanced-frontend' => '5t83fkmqs6ja17vo1n2ei1slm6',
];

$_SESSION = [
    '__flash' => [],
];