Howto configure qtbase from QT5.7 to use OpenGL ES 2.0 instead of desktop GL

Hi,

I took the LinuxImageV2.6 and replaced meta-qt5 (QT 5.5) with the current one from github (QT 5.7).

Everything compiled successfully and the image works but I’m having a problem getting qtquick programs to work.

Every program crashes on startup with the message:

Cannot find EGLConfig, returning null config
Unable to find an X11 visual which matches EGL config 0

I think this is because the qt library and all programs that use it are linked against libGL instead of libGLESv2.

ldd gives this (output from a QT program):

libGL.so.1 => /usr/lib/libGL.so.1 (0x40d64000)

but I think it should be like this (output from a testprogram that does not use QT):

libEGL.so.1 => /usr/lib/libEGL.so.1 (0x40077000)
libGLESv2.so.2 => /usr/lib/libGLESv2.so.2 (0x40234000)

The qtbase configure from qt-meta(5.5) shows this:

OpenGL / OpenVG: 
    EGL .................. yes
    OpenGL ............... yes (OpenGL ES 2.0+)
    OpenVG ............... no

The configure from (5.7) shows this though:

OpenGL / OpenVG: 
    EGL .................. yes
    OpenGL ............... desktop
    OpenVG ............... no

The file stuff/meta-toradex/recipes-qt/qt5/qtbase_%.bbappend
contains the line:

PACKAGECONFIG_GL_tegra = "gles2"

The image is built for a Colibri-T30.

Does anyone know why qtbase configure chooses desktop gl instead of gles2?

Sorry, but we currently use Jethro which is at Qt version 5.5 level. Please also note that the Qt licensing changed which may or may not be acceptable to you.