Я пытаюсь скомпилировать код OpenGL на машине с установленным графическим драйвером NVidia 4.18 и CUDA 10.1. В настоящее время он не связывается с OpenGL, например -lGL
в командной строке.
Недавно я настроил свою машину Ubuntu 18.04 LTS с CUDA 10.1 из локального установщика runfile
. Я сказал установить все в установщике.
По nvidia-smi
я вижу, что 1050Ti
определяется правильно и без проблем.
Моя проблема в том, что я не могу запускать программы OpenGL.Некоторые программы (не созданные мной) компилируются, но затем выдают эту ошибку, когда я пытаюсь их запустить:
Unable to create OpenGL context.
Это наводит меня на мысль, что OpenGL установлен неправильно. Затем я проверил, какую версию OpenGL я использую прямо сейчас. Я проверил версию с помощью команды:
glxinfo | grep "OpenGL version"
На моей машине, которая НЕ работает, я получаю следующий результат:
OpenGL version string: 3.0 Mesa 19.0.8
На отдельной машине, которая ДЕЙСТВУЕТ работает, я получаю это вывод той же команды glxinfo
:
OpenGL version string: 4.6.0 NVIDIA 410.48
(обратите внимание, что я использую другой драйвер, чем на моей сломанной машине. Это не имеет значения, так как оба используют CUDA 10.X, по крайней мере, я так понимаю )
Итак, я вижу, что мне нужно переключиться с Mesa
на NVidia
загрузчиков OpenGL.
Итак, увидев эту информацию,
Я просмотрел множество ссылок, прежде чем задавать этот вопрос.
У меня была такая же проблема при использовании Nvidia GT 630.
Приложения типа Anydesk, зависящие от OpenGL, не будут работать должным образом с драйверами Nvidia.
Основываясь на этом вопросе в Ask Ubuntu, необходимо удалить Nvidia и вернуться к драйверу Nouveau по умолчанию, чтобы исправить это.