Я установил драйверы Nvidia в свою систему Ubuntu 13, но в соответствии с этой командой (ldconfig -p | grep GL):
$ ldconfig -p | grep GL
libQtOpenGL.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
libGLU.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGLU.so.1
libGLEWmx.so.1.8 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGLEWmx.so.1.8
libGLEW.so.1.8 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGLEW.so.1.8
libGLESv2.so.2 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/mesa-egl/libGLESv2.so.2
libGL.so.1 (libc6,x86-64) => /usr/lib/libGL.so.1
libGL.so.1 (libc6) => /usr/lib/i386-linux-gnu/mesa/libGL.so.1
libGL.so (libc6,x86-64) => /usr/lib/libGL.so
libEGL.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/mesa-egl/libEGL.so.1
32-разрядная версия OpenGL указывает на библиотеки mesa вместо nvidia. Это приводит к тому, что мои игры Steam не запускаются с ошибкой:
Не удалось найти нужную точку входа OpenGL 'glGetError'! Либо ваша видеокарта не поддерживается, либо ваш драйвер OpenGL нуждается в обновлении.Почему это так? Когда установщик nvidia спросил меня, хочу ли я установить «32-битные библиотеки совместимости» (или что-то в этом роде), я выбрал «да». Как это исправить?
Я просто переустановил один и тот же драйвер Nvidia и, очевидно, полностью удалил 32-битный OpenGL-драйвер: [!d7 ]
$ ldconfig -p | grep libGL.so
libGL.so.1 (libc6,x86-64) => /usr/lib/libGL.so.1
libGL.so (libc6,x86-64) => /usr/lib/libGL.so
Теперь Steam не запускается:
Не удалось найти нужную точку входа OpenGL 'glGetError'! Либо ваша видеокарта не поддерживается, либо ваш драйвер OpenGL нуждается в обновлении.
Вам не хватает следующих 32-битных библиотек, и Steam может не работать: libGL.so.1
Когда я переустановил драйверы Nvidia, все mesa OpenGL-драйверы были удалены из кеша библиотеки. Мой кеш библиотеки выглядел так:
$ ldconfig -p | grep libGL.so
libGL.so.1 (libc6,x86-64) => /usr/lib/libGL.so.1
libGL.so (libc6,x86-64) => /usr/lib/libGL.so
Нет 32-битных драйверов! К счастью, после быстрого поиска я нашел 32-разрядные драйверы Nvidia под /usr/lib32. Я добавил, что путь к файлу в /etc/ld.so.conf.d/ (любой файл будет делать, вы даже можете создать новый файл) и запустить sudo ldconfig. Теперь мой кеш выглядит следующим образом:
$ ldconfig -p | grep libGL.so
libGL.so.1 (libc6,x86-64) => /usr/lib/libGL.so.1
libGL.so.1 (libc6) => /usr/lib32/libGL.so.1
libGL.so (libc6,x86-64) => /usr/lib/libGL.so
libGL.so (libc6) => /usr/lib32/libGL.so
И Steam работает отлично!
Codemonkey Correct. Все, что вам нужно сделать, это добавить 32-разрядный драйвер nvidia и удалить драйвер mesa.
cd /etc/ld.so.conf.d/
ls
найти имя файла с «i386»
mine «i386-linux-gnu_GL.conf»
, тогда я пишу
sudo gedit i386-linux-gnu_GL.conf
, затем добавьте 32-битный путь драйвера, используя gedit. mine is "/usr/lib32/".
Если вы не можете найти свое 32-битное местоположение драйвера, просто выполните поиск.
Сохранить. Откройте терминал и введите:
sudo ldconfig
Мой Half-Life2 отлично работает после этого. :
D