Bug#1060675: python3-pyside2.qtgui: Fails to install with libqt5gui5-gles
Package: python3-pyside2.qtgui
Version: 5.15.8-2+b1
Severity: normal
X-Debbugs-Cc: martin.fuzzey@flowbird.group
Dear Maintainer,
When libqt5gui5-gles is installed (required on arm64 platforms without
desktop OpenGL)
package installation fails with
python3-pyside2.qtgui : Depends: libqt5gui5 (>= 5.15) but it is
not installable
The problem is that python3-pyside2.qt has in its dependencies
libqt5gui5 (>= 5.15), libqt5gui5 (>= 5.15.1) | libqt5gui5-gles (>= 5.15.1)
IE an unconditional dependency on libqt5gui5 and an alternative on
libqt5gui5 or libqt5gui5-gles
I tried (as a hack) to modify the binary package(by unpacking and
repacking it) to
remove the unconditional dependency on libqt5gui5. That makes it installable
but it is still trying to use desktop opengl symbols:
>>> from PySide2 import QtGui
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: /usr/lib/python3/dist-packages/PySide2/QtGui.cpython-311-aarch64-linux-gnu.so:
undefined symbol: _ZTI18QOpenGLTimeMonitor, version Qt_5
I've looked at the package source and it seems it is supposed to handle this
by the patch debian/patches/Fix-GLES-builds.patch.
But that removes expected symbols based on QT.gui.enabled_features
The features are supplied by the qtbase5-dev package which is
different on armhf and arm64
On armhf opengles2 is enabled whereas on arm64 it is disabled.
Since python3-pyside2.qtgui Build-Depends on qtbase5-dev the patch
doesn't really
work in the Debian context on arm64 - the package will build but the
dependencies
calculated by shlibdeps will be wrong for gles.
I tried to fix the problem by rebuilding changing the Build-Depends on
qtbase5-dev
and qtbase5-private-dev to qtbase5-gles-dev and qtbase5-private-gles-dev.
But that results in a build dep conflict because some of the other dependencies
(like libqt5charts5-dev) depend on qtbase5-dev (which conflicts with
qtbase5-gles-dev)
package: sbuild-build-depends-main-dummy
version: 0.invalid.0
architecture: amd64
status: broken
reasons:
-
conflict:
pkg1:
package: qtbase5-dev
version: 5.15.8+dfsg-11
architecture: amd64
unsat-conflict: qtbase5-gles-dev:amd64
pkg2:
package: qtbase5-gles-dev
version: 5.15.8+dfsg-3
architecture: amd64
depchain1:
-
depchain:
-
package: sbuild-build-depends-main-dummy
version: 0.invalid.0
architecture: amd64
depends: libqt5charts5-dev:amd64 (>= 5.15)
-
package: libqt5charts5-dev
version: 5.15.8-2
architecture: amd64
depends: qtbase5-dev:amd64
depchain2:
-
depchain:
-
package: sbuild-build-depends-main-dummy
version: 0.invalid.0
architecture: amd64
depends: qtbase5-gles-dev:amd64 (>= 5.15)
Regards,
Martin
-- System Information:
Debian Release: 12.4
APT prefers stable
APT policy: (500, 'stable')
Architecture: arm64 (aarch64)
Kernel: Linux 6.6.6-pknbsp-svn7643-std-00019-g34ac856c6990 (SMP w/4
CPU threads; PREEMPT)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages python3-pyside2.qtgui depends on:
ii libc6 2.36-9+deb12u3
ii libgcc-s1 12.2.0-14
ii libpyside2-py3-5.15 5.15.8-2+b1
ii libqt5core5a 5.15.8+dfsg-11
ii libqt5gui5-gles 5.15.8+dfsg-3
ii libshiboken2-py3-5.15 5.15.8-2+b1
ii libstdc++6 12.2.0-14
ii python3 3.11.2-1+b1
ii python3-pyside2.qtcore 5.15.8-2+b1
python3-pyside2.qtgui recommends no packages.
python3-pyside2.qtgui suggests no packages.
-- no debconf information
Reply to: