LINUX.ORG.RU

Wine не работает с OpenGL

 , , ,


0

1

Пытаюсь запустить wine под Linux Mint 19. Сам wine стартует нормально, но как только дело доходит до приложений, использующих Direct3d/directX, программа вылетает и в консоль направляется выхлоп

X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  159
  Current serial number in output stream:  160
Ошибка указывает на проблемы с openGL, но при этом glxgears и glxinfo никаких проблем не выдают. С vulkan ситуация аналогичная - wine его не видит, хотя он установлен и если тестировать его из системы напрямую, то всё прекрасно работает. Немного информации:

  • Видеокарта NVIDIA GeForce 1050 Ti, драйвер оригинальный, версия последняя.
  • Версия OpenGL 4.6.0 NVIDIA 418.56 (шла вместе с драйвером)
  • Версия Wine 4.5 staging

Напоследок прилагаю выхлоп парочки команд для отладки. Может, пригодится для решения проблемы

root@fox1432-Z370M-DS3H:~# ls -hl /usr/lib/x86*/ | grep libGL
lrwxrwxrwx  1 root root    22 апр  7 21:39 libGLdispatch.so.0 -> libGLdispatch.so.0.0.0
-rw-r--r--  1 root root  599K авг 15  2018 libGLdispatch.so.0.0.0
lrwxrwxrwx  1 root root    29 мар 23 12:00 libGLESv1_CM_nvidia.so.1 -> libGLESv1_CM_nvidia.so.418.56
-rw-r--r--  1 root root   60K мар 15 19:34 libGLESv1_CM_nvidia.so.418.56
lrwxrwxrwx  1 root root    26 мар 23 12:00 libGLESv2_nvidia.so.2 -> libGLESv2_nvidia.so.418.56
-rw-r--r--  1 root root  109K мар 15 19:35 libGLESv2_nvidia.so.418.56
lrwxrwxrwx  1 root root    18 апр  7 21:39 libGLESv2.so.2 -> libGLESv2.so.2.0.0
-rw-r--r--  1 root root   71K авг 15  2018 libGLESv2.so.2.0.0
lrwxrwxrwx  1 root root    14 апр  7 21:39 libGL.so.1 -> libGL.so.1.0.0
-rw-r--r--  1 root root  555K авг 15  2018 libGL.so.1.0.0
lrwxrwxrwx  1 root root    15 фев 11 15:40 libGLU.so.1 -> libGLU.so.1.3.1
-rw-r--r--  1 root root  443K мая 22  2016 libGLU.so.1.3.1
lrwxrwxrwx  1 root root    16 фев  9 00:02 libGLX_indirect.so.0 -> libGLX_mesa.so.0
lrwxrwxrwx  1 root root    20 фев  9 00:02 libGLX_mesa.so.0 -> libGLX_mesa.so.0.0.0
-rw-r--r--  1 root root  469K фев  9 00:02 libGLX_mesa.so.0.0.0
lrwxrwxrwx  1 root root    23 мар 23 12:00 libGLX_nvidia.so.0 -> libGLX_nvidia.so.418.56
-rw-r--r--  1 root root  1,3M мар 15 19:32 libGLX_nvidia.so.418.56
lrwxrwxrwx  1 root root    15 апр  7 21:39 libGLX.so.0 -> libGLX.so.0.0.0
-rw-r--r--  1 root root   67K авг 15  2018 libGLX.so.0.0.0
root@fox1432-Z370M-DS3H:~# glxinfo
name of display: :0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
    ...
client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
client glx extensions:
    ...
GLX version: 1.4
GLX extensions:
    ...
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 4096 MB
    Total available memory: 4096 MB
    Currently available dedicated video memory: 3799 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 1050 Ti/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 418.56
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
    ...
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 418.56
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
    ...
Помогите, пожалуйста, если знаете, как. А то я всё никак ответ не могу найти.

Какой дистрибутив, как ставили драйвер Nvidia?

Установите пакет с glxgears и запустите его.

anonymous
()
Ответ на: комментарий от anonymous

Я уже писал - glxgears работает, дистрибутив Mint 19.1 cinnamon, драйвер ставил через apt.

fox1432
() автор топика
Ответ на: комментарий от Kron4ek

Запускал я wglgears.exe (это тестировочное 32bit приложение из winetricks). Запускал его и на 64bit, и на 32bit - ных wineprefix-ах - везде результат один и тот же.

fox1432
() автор топика
Ответ на: комментарий от fox1432

а DxDiag при запуске выдает, что некоторые фаилы отсутствуют

fox1432
() автор топика
Ответ на: комментарий от fox1432

Я, увы, не знаю 64-битных программ, использующих d3d. Но есть 64-битная игра, которая весит относительно мало - называется Factory Town. Ссылку дать не могу, поищи ее на RuTracker.

Kron4ek ★★★★★
()
Ответ на: комментарий от Kron4ek

Сработало. Игра запустилась. Некоторые текстуры, правда, не отображаются, но тут уже скорее дело в том, что она запущена не из вайновского диска C, а просто из папки в линуксе, да и не все библиотеки у меня в вайне стоят. Но это 64bit приложение, а если мне нужно, скажем, steam запустить? Он-то 32bit-ный

fox1432
() автор топика
Ответ на: комментарий от fox1432

Хорошо, я так и думал, что проблема с 32-битными приложениями. Проверь, установлен ли 32-битный libgl (в Mint 19 пакет должен называться libgl1:i386).

Kron4ek ★★★★★
()
Ответ на: комментарий от fox1432

попробую порыться в драйверах nvidia, может там чего для 32bit будет

fox1432
() автор топика
Ответ на: комментарий от fox1432

Значит другие 32-битные пакеты нужны. Не знаю, какие именно.

Ну, ты сам понимаешь, что раз 64-битные приложения работают, а 32-битные нет, значит проблема в 32-битных библиотеках.

Kron4ek ★★★★★
()
Ответ на: комментарий от fox1432

Поставил libnvidia-gl-418:i386 - glxgears заработали! спасибо!

fox1432
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.