When compiling Qt 5.4, headers for GLES3 are automatically detected if the build host supports such a feature. However, when deploying the build to a target which does not support GLES3, QtGui breaks as it cannot find some symbols. This is a serious regression as Qt has always behaved well on runtime OpenGL requirements, and it is made worse by the fact that the autodetection cannot be circumvented. The only way around this bug is patching configure.
Ideally, GLES3 support would need to load symbols at runtime (just like other OpenGL codepaths in Qt) or, as a temporary fix, it should be made optional (a switch like -no-es3). At the moment every build on a host which supports GLES3 deployed to a target with no GLES3 support is broken.
|For Gerrit Dashboard: QTBUG-43318|
|102111,1||Remove OpenGLES3 direct symbol references.||5.4||qt/qtbase||Status: ABANDONED||-1||0|
|102257,6||Resolve GLES3 functions from the shared lib||5.4||qt/qtbase||Status: ABANDONED||0||0|
|103148,2||Resolve GLES3 functions from the shared lib||5.4.1||qt/qtbase||Status: MERGED||+2||0|