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 via email to