Inconsistent OpenGL support across architectures

Bug #1811678 reported by Gregor Jasny
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
qtbase-opensource-src (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Hello,

today I noticed build failures of v4l-utils on arm64 hosts:
https://launchpadlibrarian.net/406083796/buildlog_ubuntu-bionic-arm64.v4l-utils_1.17.1-201901131615~ubuntu18.04.1_BUILDING.txt.gz

This is due to the OpenGLES2 feature is enabled on arm64 (but this feature is not enabled for amd64):

> /usr/include/x86_64-linux-gnu/qt5/QtGui# grep -i opengl qtgui-config.h
> #define QT_FEATURE_opengles2 -1
> #define QT_FEATURE_opengl 1
> #define QT_FEATURE_opengles3 -1
> #define QT_FEATURE_opengles31 -1

vs:

> /usr/include/aarch64-linux-gnu/qt5/QtGui$ grep -i opengl qtgui-config.h
> #define QT_FEATURE_opengles2 1
> #define QT_OPENGL_ES true
> #define QT_OPENGL_ES_2 true
> #define QT_FEATURE_opengl 1
> #define QT_FEATURE_opengles3 1
> #define QT_OPENGL_ES_3 true
> #define QT_FEATURE_opengles31 1
> #define QT_OPENGL_ES_3_1 true

Is the inconsistent feature setting intentional? The Debian Qt packages seem to select Desktop OpenGL across architectures.

Thanks,
Gregor

Revision history for this message
Gregor Jasny (gjasny) wrote :

I guess this is due to the following lines in debian/rules:

gles2_architectures := armel armhf arm64
ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH), $(gles2_architectures)))
 extra_configure_opts += -opengl es2
else
 extra_configure_opts += -opengl desktop
endif

Still my question is why those architectures (should) differ from the regular ones. And why Ubuntu is behaving differently than Debian.

In my case I need access to qopenglext.h contents which does not get loaded if OpenGL ES2 support is present.

Revision history for this message
Dmitry Shachnev (mitya57) wrote :

Sorry for the delay, for some reason I have not received a mail about this bug.

Starting with Ubuntu 19.04 release, there is no difference between Debian and Ubuntu: both use OpenGL ES on armel/armhf, and desktop OpenGL on the other architectures. Initially I wanted to add arm64 to that list too, but after the discussion in https://lists.debian.org/debian-devel/2018/11/msg00457.html the plan was changed.

The reason for using OpenGL ES on armel/armhf is that the majority of devices with that architecture are mobile devices that have video chips supporting only OpenGL ES natively.

It looks like v4l-utils currently builds fine on all supported Ubuntu releases, but if you have problems with supporting OpenGL ES versions, please let me know.

Changed in qtbase-opensource-src (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.