Steam: kesalahan libGL: Tidak ditemukan fbConfigs atau visual yang cocok dengan kesalahan libGL: gagal memuat driver: swrast


37

Jika saya mengklik aplikasi desktop "Steam", tidak ada yang terjadi.

Running steamin terminal menghasilkan yang berikut:

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

Yang menarik adalah bahwa jika saya mengubah driver GPU saya ke xorg, itu berfungsi dengan baik.

Apa yang bisa saya lakukan untuk membuatnya bekerja? Itu berhenti bekerja setelah pembaruan uap terbaru (36 jam yang lalu).

Saya mencoba menghapus instalan nvidia - sudo apt-get remove nvidia*dan menginstal ulang driver, tetapi tidak berhasil.

Jawaban:


52

Ubuntu 16.04+ Bagi siapa pun yang masih mengalami kesalahan yang sama, jika Anda menggunakan driver nvidia, terkadang Anda akan melihat bahwa libGL.so.1 menunjuk ke libGL ambigu yang disediakan oleh mesa dan nvidia. Untuk menguji ini, Anda dapat menjalankan perintah ini

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

Outputnya kira-kira seperti:

    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

Sekarang saya hanya perlu menghapus perpustakaan yang disediakan oleh mesa dan semuanya bekerja dengan sempurna.

$ sudo rm /usr/lib/i386-linux-gnu/mesa/libGL.so.1

Pembaruan: Masalah ini tidak ada lagi dari Ubuntu 18.04 LTS.


11
Man, kamu layak mendapatkan kue yang sangat besar.
Aritz Lopez

2
Ini adalah jawaban yang benar
Colonder

2
pada debian 9, saya menghapus yang ini dan berhasil, tetapi tidak menyebutkan "mesa", namun, "dpkg -S libGL.so.1" berikan tip mana yang harus Anda hapus. Jadi: rm /usr/lib/i386-linux-gnu/libGL.so.1 Dan nikmati cookie Anda :)
FabricioFCarv

4
Masalah ini berlanjut pada 18.10
QkiZ

4
Setelah memperbarui Linux Mint dari 18 hingga 19 saya mengalami masalah ini. Saya harus menghapus /usr/lib/i386-linux-gnu/libGL.so.1 Terima kasih Zobayer Hasan atas bantuan Anda!
kayo

7

Subsistem Windows untuk Linux (WSL) memiliki kesalahan yang sama

Di Windows Subsystem untuk Linux (WSL) di bawah Windows 10 ada file /usr/lib/i386-linux-gnu/mesa/libGL.so.1tidak ada. Sebaliknya ada file yang /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1sepertinya menggantikannya. Namun jika Anda menghapus file pengganti perpustakaan tidak berfungsi sama sekali.

Ganti nama pustaka lalu ganti nama kembali memecahkan masalah

Jika Anda mengganti nama file dan kemudian mengganti nama kembali kesalahan hilang dan itu bekerja jauh lebih cepat:

───────────────────────────────────────────────────────────────────────────────
rick@alien:/mnt/e/etc$ lock-screen-timer
Linux 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
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 (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-timer
Linux 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
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
───────────────────────────────────────────────────────────────────────────────
rick@alien:/mnt/e/etc$

Saya memverifikasi bahwa perubahannya persisten, yaitu menutup jendela terminal WSL dan membuka jendela baru.

Apa yang menggunakan perpustakaan?

Perpustakaan digunakan oleh yaddalam skrip bash kunci-layar-timer ditingkatkan dengan dukungan hybrid untuk WSL selain Ubuntu. Yad adalah persimpangan Zenityyang mengapa Anda melihat Gtk-Message:referensi mirip Zenity dalam pesan kesalahan ketiga di atas.

Beginilah bentuk yadjendelanya di Ubuntu (di WSL sedikit berbeda):

Timer Layar Kunci


Ini tidak berhasil untuk saya - walaupun saya tidak menggunakan pengunci layar
Eric

lock-screen-timerhanyalah contoh dari skrip yang memanggil GUI. Anda bisa menggunakannya gedit.
WinEunuuchs2Unix

Tentu saya sadar. Maksud saya adalah aplikasi saya ( rqt) mungkin memanggil GUI dengan cara yang berbeda, yang mungkin mengapa masih gagal setelah mencoba memperbaiki Anda
Eric

Hm Bagi saya gnome-terminal melempar peringatan yang sama, tetapi bahkan tanpa mengganti nama apa pun, peringatan itu hilang ketika memulai instance kedua terminal gnome. Bukankah itu masalahnya mungkin untuk "solusi" Anda juga?
jan-glx

Ini tidak berhasil untuk saya juga
Tropilio

2

Ini mungkin masalah driver nvidia, menurut masalah steam-for-linux .

Dalam kasus saya, saya menginstal SuperTuxKart melalui flapak, ketika saya menjalankannya, saya menemukan kesalahan berikut:

..:: Antarctica Rendering Engine 2.0 ::..
Linux 4.15.0-52-generic #56-Ubuntu SMP Tue Jun 4 22:49:08 UTC 2019 x86_64
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast

Solusi saya adalah:

  1. Periksa driver nvidia di sistem saya

ubuntu-drivers devices

Sudah nvidia-driver-430diinstal.

  1. Menurut masalah masalah steam-for-linux , instal nvidia-driver-418untuk menggantinvidia-driver-430

sudo apt install libnvidia-gl-418

Itu diminta bahwa itu tidak bergantung libnvidia-compute-418, jadi instal libnvidia-compute-418dulu.

sudo apt install libnvidia-compute-418

kemudian

sudo apt install libnvidia-gl-418

  1. Sistem boot ulang.

Lalu saya menjalankan SuperTuxKart , itu berhasil.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.