[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#913287: marked as done (libqt5core5a: loads libGL.so instead of libGL.so.1, causing PyQt5 to crash on systems with NVIDIA libraries installed)



Your message dated Sat, 17 Nov 2018 22:50:59 +0000
with message-id <E1gO9QZ-000I9J-Fg@fasolo.debian.org>
and subject line Bug#913287: fixed in qtbase-opensource-src 5.11.2+dfsg-6
has caused the Debian Bug report #913287,
regarding libqt5core5a: loads libGL.so instead of libGL.so.1, causing PyQt5 to crash on systems with NVIDIA libraries installed
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
913287: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=913287
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: libqt5core5a
Version: 5.11.2+dfsg-4
Severity: important
Tags: patch upstream

Hello,

A long-standing bug affects the PyQt5 (and previously the PyQt4)
packages, whereby they crash on Debian-based systems which have the
NVIDIA libraries installed.  The following almost minimal code
crashes:

#!/usr/bin/python3

import sys

from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWebEngineWidgets import QWebEngineView

app = QApplication(sys.argv)
wv = QWebEngineView()

wv.load(QUrl('about:blank'))
wv.show()

app.exec_()


See for example:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=912925 
https://bugs.launchpad.net/ubuntu/+source/python-qt4/+bug/941826

I have managed to track down the source of the error and reported it
upstream (along with debugging logs and so on) at:
https://bugreports.qt.io/browse/QTBUG-71488

It turns out that the bug lies in the libqt5core5a library, which
tries loading libGL.so before trying libGL.so.1, which is the wrong
order (in particular on Debian-based systems - see the above Debian
bug report for a discussion of why).  I have created and tested the
attached patch for the bug.

It would be great if this patch could be applied to Debian before
buster is frozen; it probably won't make it into the upstream sources
in time for buster (because it would presumably go into the 5.12.x
tree).

Thanks!

   Julian

-- System Information:
Debian Release: buster/sid
  APT prefers stretch
  APT policy: (500, 'stretch'), (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.14.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8) (ignored: LC_ALL set to en_GB.UTF-8), LANGUAGE=en_GB.utf8 (charmap=UTF-8) (ignored: LC_ALL set to en_GB.UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libqt5core5a depends on:
ii  libc6                  2.27-8
ii  libdouble-conversion1  3.1.0-2
ii  libgcc1                1:8.2.0-9
ii  libglib2.0-0           2.58.1-2
ii  libicu60               60.2-6
ii  libpcre2-16-0          10.32-3
ii  libstdc++6             8.2.0-9
ii  zlib1g                 1:1.2.11.dfsg-1

Versions of packages libqt5core5a recommends:
ii  qttranslations5-l10n  5.11.2-2

Versions of packages libqt5core5a suggests:
ii  libthai0  0.1.28-1

-- no debconf information
--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
@@ -650,9 +650,9 @@
 #if QT_CONFIG(library)
                 extern const QString qt_gl_library_name();
 //                QLibrary lib(qt_gl_library_name());
-                QLibrary lib(QLatin1String("GL"));
+                QLibrary lib(QLatin1String("GL"), 1);
                 if (!lib.load())
-                    lib.setFileNameAndVersion(QLatin1String("GL"), 1);
+                    lib.setFileName(QLatin1String("GL"));
                 glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB");
 #endif
             }

--- End Message ---
--- Begin Message ---
Source: qtbase-opensource-src
Source-Version: 5.11.2+dfsg-6

We believe that the bug you reported is fixed in the latest version of
qtbase-opensource-src, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 913287@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Lisandro Damián Nicanor Pérez Meyer <lisandro@debian.org> (supplier of updated qtbase-opensource-src package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sat, 17 Nov 2018 19:24:49 -0300
Source: qtbase-opensource-src
Binary: libqt5core5a libqt5gui5 qt5-gtk-platformtheme qt5-flatpak-platformtheme libqt5network5 libqt5opengl5 libqt5sql5 libqt5sql5-mysql libqt5sql5-odbc libqt5sql5-psql libqt5sql5-sqlite libqt5sql5-tds libqt5sql5-ibase libqt5xml5 libqt5dbus5 libqt5test5 libqt5concurrent5 libqt5widgets5 libqt5printsupport5 qtbase5-dev qtbase5-private-dev libqt5opengl5-dev qtbase5-dev-tools qt5-qmake-bin qt5-qmake qtbase5-examples qt5-default qtbase5-doc qtbase5-doc-html
Architecture: source
Version: 5.11.2+dfsg-6
Distribution: unstable
Urgency: medium
Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Changed-By: Lisandro Damián Nicanor Pérez Meyer <lisandro@debian.org>
Description:
 libqt5concurrent5 - Qt 5 concurrent module
 libqt5core5a - Qt 5 core module
 libqt5dbus5 - Qt 5 D-Bus module
 libqt5gui5 - Qt 5 GUI module
 libqt5network5 - Qt 5 network module
 libqt5opengl5 - Qt 5 OpenGL module
 libqt5opengl5-dev - Qt 5 OpenGL library development files
 libqt5printsupport5 - Qt 5 print support module
 libqt5sql5 - Qt 5 SQL module
 libqt5sql5-ibase - Qt 5 Firebird database driver
 libqt5sql5-mysql - Qt 5 MySQL database driver
 libqt5sql5-odbc - Qt 5 ODBC database driver
 libqt5sql5-psql - Qt 5 PostgreSQL database driver
 libqt5sql5-sqlite - Qt 5 SQLite 3 database driver
 libqt5sql5-tds - Qt 5 FreeTDS database driver
 libqt5test5 - Qt 5 test module
 libqt5widgets5 - Qt 5 widgets module
 libqt5xml5 - Qt 5 XML module
 qt5-default - Qt 5 development defaults package
 qt5-flatpak-platformtheme - Qt 5 Flatpak platform theme
 qt5-gtk-platformtheme - Qt 5 GTK+ 3 platform theme
 qt5-qmake  - Qt 5 qmake Makefile generator tool
 qt5-qmake-bin - Qt 5 qmake Makefile generator tool — binary file
 qtbase5-dev - Qt 5 base development files
 qtbase5-dev-tools - Qt 5 base development programs
 qtbase5-doc - Qt 5 base documentation
 qtbase5-doc-html - Qt 5 base HTML documentation
 qtbase5-examples - Qt 5 base examples
 qtbase5-private-dev - Qt 5 base private development files
Closes: 913287
Changes:
 qtbase-opensource-src (5.11.2+dfsg-6) unstable; urgency=medium
 .
   [ Dmitry Shachnev ]
   * Stop patching mkspecs/qmodule.pri in override_dh_auto_configure.
     The condition has changed to !host_build|!cross_compile in Qt 5.9,
     which is always true for us.
   * Strip -fdebug-prefix-map=${BUILDDIR} flag from generated qmodule.pri.
     This flag was unwantedly leaking to builds of other Qt modules.
     Thanks to Helmut Grohne for noticing it!
   * Build corelib and gui without -O3 on ia64 as a workaround for GCC bug
     (PR rtl-optimization/85412).
   * Update symbols files with buildds’ logs (alpha and kfreebsd-i386).
 .
   [ Lisandro Damián Nicanor Pérez Meyer ]
   * Backport remove_need_for_glXGetProcAddressARB.patch. This removes the
     need for using dlopen() and thus libGL.so.1 should be used instead of
     libGL.so (Closes: #913287).
   * Include /usr/share/dpkg/pkg-info.mk and replace the call to
     dpkg-parsechangelog with DEB_VERSION_UPTREAM. According to lintian this
     should handle more corner cases.
Checksums-Sha1:
 db20b8ce6e2763529b9e0658174d40c0d5afd579 5167 qtbase-opensource-src_5.11.2+dfsg-6.dsc
 c9cb37f7f3644f26c3dbafadc1e77293fe622076 233040 qtbase-opensource-src_5.11.2+dfsg-6.debian.tar.xz
 352c932b91f13f685acd8b55f57abbd0aa7e2c53 9978 qtbase-opensource-src_5.11.2+dfsg-6_source.buildinfo
Checksums-Sha256:
 20e202d7ccc42a4e1f37b83099ca88137561f747dddab3b7871ae88ce1fd2d77 5167 qtbase-opensource-src_5.11.2+dfsg-6.dsc
 d9ea8cbfc28c673d78aa4c1da0fe14c7fa76bcff0486e03e3ff9348ebeee0992 233040 qtbase-opensource-src_5.11.2+dfsg-6.debian.tar.xz
 71a9734618e36b493f91493d18c3b488f4c8c1b9df41090c3665cb919f07c801 9978 qtbase-opensource-src_5.11.2+dfsg-6_source.buildinfo
Files:
 c819eaef1e70a63ffb1f05acff44d9ac 5167 libs optional qtbase-opensource-src_5.11.2+dfsg-6.dsc
 adc3644d2635a33dc9cdb72d91669639 233040 libs optional qtbase-opensource-src_5.11.2+dfsg-6.debian.tar.xz
 077d4934a9364f7e03fe5ee4bf53b7ae 9978 libs optional qtbase-opensource-src_5.11.2+dfsg-6_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQJIBAEBCAAyFiEEEt36hKwjsrvwSzE8q2RfQGKGp9AFAlvwl0cUHGxpc2FuZHJv
QGRlYmlhbi5vcmcACgkQq2RfQGKGp9D0PA//bCz4vDgxnR1ML96ReJEfk5fnxBR7
5j2pe6ywIQgtFwB5tvFVYBetxTC5aW8pEElJ73o4jCQQ3niZfuL/IL5rrf8ueWLM
KianT23NRoKS4D9KBEMxxjv9UwchJzTEj6yc74Ob3N0xDZD1mTLIMWlATZw+VTAj
LYRFIc/KsS6hs/yCSCKYff1kUlbdAhUr+SBbIBuPWmXzUxZNqYvgzxM1xZguT3UC
Da5YtBOXpzWlCwUFTo8fThI2yl/iuQ4ytY7H23/M8ya4dbvyKll5jN+lvSc6F8Nk
90niRdsX6zBbhpHYQWbI5iYri0GqBf1hXCFVhlXqD1tV71iH6vai8XMtFG9ZcK6i
xlyAjmUZ0lzYAeHD7EjCfILz0DdbRWjy9l+xc6ax3lLTjmelFdhzGLOlLYPl1uZU
eFHFk4J7fDc7kccFqJ49eQJWPItXm1mmXXCTm/Yz/ALW5CMMtlktjdkgQ5NmmVTK
Wp9Jaufrcuec+Ja0MpoBhjSoiHPUuIjBPt7DzjIaM5oklb7q26XlqzHqzdBmpiNx
Z2AnzqzZ/g4Cxi1fdoEGCEpzX/4J5qxU903w/jjWACLonxwBky3FbMIyrgq2eB+L
0w64QTyFuyRHlCaKYdeGfK+M6V2AMAV12R07ObPD9VfJYoM3AThZSi0sAemTnDaU
UHIE+42KWPIuBkk=
=ayJl
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: