#974091 qtbase5-examples: not co-installable with libqt5qui5-gles on arm64

Package:
qtbase5-examples
Source:
qtbase-opensource-src
Description:
Qt 5 base examples
Submitter:
ABDUR REHMAN
Date:
2021-04-22 22:45:03 UTC
Severity:
normal
#974091#5
Date:
2020-11-09 19:59:43 UTC
From:
To:
Hi,

qtbase5-examples depends on libqt5opengl5, which in arm64 has following
dependencies:
    libqt5gui5 (>= 5.1.0), libqt5gui5 (>= 5.12.5) | libqt5gui5-gles (>= 5.12.5)

Because of this, if we install libqt5gui5-gles and then try to install
qtbase5-examples, following error is observed:
    libqt5gui5-gles : Conflicts: libqt5gui5 but 5.15.1+dfsg-2 is to be installed

Looking at the source, there are 9 examples that use `QT += opengl`.
In build artifacts, libQt5OpenGL.so.5 is linked into 3 of the built
qtbase5-examples executables, namely sub-attaq, boxes and chip.

Is it possible to have a -gles version for libqt5opengl5? Or alternately
have the examples that are using the deprecated Qt OpenGL module, removed from
the build?

#974091#10
Date:
2021-04-22 16:45:06 UTC
From:
To:
While this is filed against qtbase5-examples, the dependency issues are
really a problem of libqt5opengl5 and should thus be filed against this
package.

     libqt5gui5 (>= 5.1.0), libqt5gui5 (>= 5.12.5) | libqt5gui5-gles (>=
5.12.5)

essentially excludes libqt5gui5-gles. I experience this problem trying
to install qtgstreamer-plugins-qt5 which depends on libqt5opengl5
leading to the same problems. On both the pinephone and the Librem5, the
non-gles versions lead to crashes.

The snag is of course, that those two dependencies are auto-generated
and I have now idea how they have been determined.

#974091#15
Date:
2021-04-22 18:24:09 UTC
From:
To:
Hi Sebastian!

This is correct. libqt5opengl5 is a deprecated library [1] and we decided to
not ship an OpenGL ES version of it.

Packages that depend on libqt5opengl5 should be ported to modern API (e.g.
QGLWidget → QOpenGLWidget), then they will not have this extra dependency.
In Qt 6, the OpenGL library is removed completely.

Speaking about qtgstreamer particularly, it is unmaintained [2] and the author
suggests some alternatives which should be used instead.

By the way, thanks for the feedback of using our packages on pinephone and
Librem5. If there are any other issues, please do not hesitate to report them.

[1]: https://doc.qt.io/qt-5/qtopengl-index.html
[2]: https://cgit.freedesktop.org/gstreamer/qt-gstreamer/tree/README

#974091#20
Date:
2021-04-22 22:40:37 UTC
From:
To:
Thanks for the info, I have been packaging pure-maps, a QML navigation app, and got it running on both phones. I would love to get them into Deban proper...

Sebastian

Am 22. April 2021 20:24:09 MESZ schrieb Dmitry Shachnev <mitya57@debian.org>: