QXcbIntegration: Невозможно создать контекст платформы OpenGL, ни GLX, ни EGL не включены
У меня есть бинарный файл Unix, созданный с помощью QT и OpenGL, который я пытаюсь выполнить на Linux-64. Это простая визуальная программа, которая показывает 2D и 3D графику.
Я установил все необходимые зависимости, такие как библиотеки QT и openGL. Тем не менее, я застрял со следующей ошибкой, пытаясь выполнить двоичный файл
"QXcbIntegration: Невозможно создать контекст платформы OpenGL, ни GLX, ни EGL не включены"
Тем не менее, двоичный файл в конечном итоге работает, но с некоторыми отсутствующими функциями, такими как 3D-графика.
В мои настройки входят: виртуальный linux-64 с использованием virtualBox, Vagrant, x-11 forwarding и машина Mac.
3 ответа
В конце концов я понял, что OpenGL 3.3 не будет легко работать на виртуальных машинах... пока. Мне пришлось загружаться с Ubuntu USB и работать оттуда, установив последний пакет mesa 3d.
Я вижу эту проблему при выполнении приложения Qt, я выполнялся в командной строке. (Ubuntu 16.04 по умолчанию имеет черту). Я изменил на приглашение bash и перестроил свое приложение QT. Эта ошибка исчезла. Для настройки bash я использовал приведенную ниже команду.
sudo dpkg-reconfigure dash
Это показывает аналогичную проблему, и разработчик в комментарии сказал our 3D support is not very clean in Linux guests, hence the warnings
, Вы можете попробовать VMware.
После некоторого времени, пытаясь заставить opengl работать над определенной заблокированной коробкой Linux, я вернулся к Qt Creator 2.5.2.
http://download.qt.io/archive/qtcreator/2.5/
http://download.qt.io/archive/qtcreator/2.5/qt-creator-linux-x86_64-opensource-2.5.2.bin
После получения этого на коробке linux...
chmod u+x *.bin
./qt-creator-linux-x86_64-opensource-2.5.2.bin
И после короткого инсталлятора Qt Creator работает!
По сути, QtQuick является требованием в любом Qt Creator, созданном после 2.5 (он же Qt 5.x) и QtQuick NEEDS библиотек opengl и их поддержки.
Надеюсь, это поможет.