Saya memiliki masalah ketika mengkompilasi proyek-SFML (tidak melihat grafik):
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Kesalahan ini dapat diatasi dengan menginstal ulang nvidia-driver sederhana melalui tutorial ini: https://askubuntu.com/a/451248/341889
..tapi ketika saya mendapatkan pembaruan baru - kesalahan ini kembali; (Apa yang harus saya lakukan? Ini bukan solusinya - tidak menggunakan pembaruan sistem ...
PS dan ya, saya menyimpan semua perubahan setelah menginstal driver nvidia
libGL.so
:LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/mesa ./glprogram
. Secara default, Ubuntu 16.04 saya gunakan/usr/lib/nvidia-361/libGL.so
karena/etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf
dan semuanya berfungsi dengan baik.Jawaban:
The
swrast
hal adalah penyaji perangkat lunak. Itu berarti tidak menemukan driver perangkat keras untuk kartu grafis Anda. Ada banyak perpustakaan libGL diinstal dan banyak tautan simbolik ke perpustakaan tersebut. Untuk melihat ini jalankan ini dari shell:Sekarang kemungkinan penyebab masalah Anda adalah bahwa menginstal driver grafis kadang-kadang memutuskan tautan simbolik ini. (Khususnya
/usr/local/lib/libGL.so.1.2.0
mungkin salah lib atau tautan sym ke tautan yang salah).Untuk mengetahui pustaka apa yang ingin dijalankan oleh program OpenGL, Anda dapat menghidupkan sedikit kata dan menjalankan program OpenGL sederhana. Anda dapat memverifikasi ini menggunakan program uji OpenGL standar:
Semoga itu akan gagal dengan cara yang sama seperti SFML. Dengan
LIBGL_DEBUG
itu akan memberi tahu Anda apa perpustakaan OpenGL yang coba dimuat. Lagipula lib yang akan dicoba akan hampir pasti/usr/local/lib/libGL.so.1.2.0
(Edit: Ini adalah pustaka OpenGL standar pada mesin saya pada saat saya menjawab ini. Mungkin ada beberapa versi lain pada mesin Anda sekarang).Jadi solusinya (dalam hal ini) adalah memastikan bahwa itu
/usr/local/lib/libGL.so.1.2.0
adalah tautan simbolik yang menunjuk pada pustaka OpenGL yang tepat. Dalam kasus saya, saya memiliki driver Nvidia 3.40 jadi saya berlari:Tetapi Anda ingin mengarahkannya ke lib OpenGL yang sesuai untuk Anda (tercantum dalam perintah find pertama).
Singkatnya: menginstal driver grafis (eksklusif) dapat memutus tautan simbolik yang digunakan untuk lib OpenGL. Untuk mengatasi masalah ini secara manual perbaiki tautan simbolik (perbaiki
/usr/local/lib/libGL.so.1.2.0
dulu).sumber
Saya memiliki masalah yang sama pada Ubuntu 16.10 dengan
nvidia-340
driver dan tidak ada solusi yang bekerja untuk saya.Ternyata perpustakaan 32-bit tidak ada di jalur perpustakaan.
Liner satu ini bekerja untuk saya:
sumber
Saya mengalami masalah dalam mendapatkan symlink yang benar untuk menunjuk pada driver nVidia dan saya menemukan cara lain yang berfungsi untuk saya.
Diuraikan di sini .
Dan itu daftar tentang cara menginstal driver nVidia melalui PPA yang tersedia untuk 349.16, versi terbaru.
Hapus instalan driver nVidia yang saat ini diinstal dengan membuka jendela terminal ( Ctrl+ ALT+ T) dan mengetik
Mulai ulang sistem Anda
Kemudian buka terminal lain dan ketik berikut ini
Kemudian reboot lagi
Saya mencobanya setelah tersesat dengan symlink dan steam bekerja dengan baik segera setelah menginstal driver dan lagi itu masih berfungsi setelah saya memiliki 400+ MB pembaruan sistem.
sumber
Untuk memberikan alternatif bagi jawaban Adrian: jika Anda lebih suka menggunakan driver berpemilik yang bersumber langsung dari NVIDIA daripada yang ditemukan dalam PPA, menginstal (atau dalam kasus saya, menginstal ulang) driver berpemilik terbaru dapat membantu menghilangkan kesalahan swrast.
Jika Anda belum memiliki driver NVIDIA, unduh driver dari situs web NVIDIA . Selanjutnya, beralih ke tty (
ctrl
+alt
+F1
) dan matikan manajer login Anda:Jika menggunakan lightdm,
$ sudo service lightdm stop
Jika menggunakan gdm,
$ sudo service gdm stop
Arahkan ke skrip instal dan jalankan, dan ikuti petunjuknya. Jangan khawatir jika skrip pra-instal gagal. Saya selalu menerima pendaftaran DKMS dan perpustakaan kompatibilitas 32-bit. Setelah driver diinstal, restart mesin Anda:
Jika Anda sudah memiliki skrip instal dari driver NVIDIA yang lebih lama, cukup jalankan skrip instal driver NVIDIA seperti disebutkan di atas, tetapi dengan opsi "--update":
Ini akan membuat Anda mendapatkan versi terbaru dari driver.
Melakukan ini memperbaiki
libGL error: failed to load driver: swrast
kesalahan saya .sumber
Punya masalah yang sama di ubuntu 18. Ini pada dasarnya terjadi hanya dengan aplikasi 32bit. Jadi ide saya adalah menginstal 32 bit nvidia sesuatu, karena folder / usr / lib / i386-linux-gnu / saya mencurigakan kosong.
Setelah mencoba sangat sedikit, ini memperbaiki masalah saya dengan uap dan anggur tidak dimulai:
(dan ubah 418 ke versi mana pun yang Anda miliki)
Menarik bahwa aplikasi tidak mengeluh tentang dependensi yang hilang selama instalasi.
sumber
Harus saya akui, saya tidak yakin mengapa ini berhasil untuk saya, tetapi ternyata berhasil. Dalam hal ini khususnya "memperbaiki" entri ld.so.conf.d dengan menambahkan entri baru seperti ini berfungsi:
Ini masuk akal, sampai Anda menjalankan yang berikut
find
:Mengapa memiliki entri yang sama dalam karya rangkap tiga, tetapi tidak dalam rangkap dua, saya tidak tahu!
sumber
Inilah
apt
solusi -hanya yang bekerja untuk saya, tidak ada symlinking atau bercanda denganld.so.conf.d
:sumber
Saya hanya menggunakan baris ini:
dan itu berhasil.
Karena saya melihat input seperti itu ketika saya menjalankan
sudo ldconfig -p | grep -i gl.so
:sumber
Jalankan saja ini:
Versi driver Anda ditampilkan dalam pengaturan nvidia.
sumber
Dalam kasus saya solusi untuk masalah ini adalah kelanjutan dari pesan kesalahan
Paraview 5.7.0 memberi tahu saya bahwa:
Pesan
telah menjadi kunci. Saya menjalankan 'glxgears' untuk memeriksa apakah perpustakaan grafis berjalan dengan baik - lihat juga
man glxgears
- menampilkan animasi ini:Maka solusi saya hanyalah mengatur variabel lingkungan
Perhatikan:
locate libGL.so
, saya menemukan kandidat lain/usr/lib/i386-linux-gnu/libGL.so
. Namun, menetapkan ini sebagai LD_PRELOAD, tidak memperbaiki masalah;locate libGLEW.so
Saya berhutang budi kepada https://github.com/openai/mujoco-py/issues/44 untuk mendapatkan petunjuk
sumber
Saya menghadapi masalah aneh ini ketika saya ssh ke Ubuntu VM saya dari Macbook Pro saya, tetapi menginstal driver Nvidia di bawah ini pada Ubuntu 16.04 saya memperbaiki masalahnya. Semoga ini berhasil untuk Anda.
sudo apt-get install nvidia-331
sumber