Subject: bug#30790: Broken Qt 5 in my main profile - Qt DBus ?

From: Maxim Cournoyer <[email-masked]>
Date: Fri, 09 Apr 2021 12:04:31 -0400

Hi Danny,

Danny Milosavljevic <[email-masked]> writes:

> Hi,
>
> seems I broke Qt 5 in my main profile by updating some packages.
>
> I've got this situation:
>
> /gnu/store/gdcnj399zhkpa5kf2mnzgg9lfb3nnd0h-lyx-2.2.3$ gdb share/lyx/bin/lyx2.2
> (gdb) r
> Cannot mix incompatible Qt library (version 0x50903) with this library (version 0x50904)
> Aborted
> (gdb) bt
> #0 0x00007ffff50a41e4 in raise () from
> /gnu/store/4sqaib7c2dfjv62ivrg9b8wa7bh226la-glibc-2.26.105-g0890d5379c/lib/libc.so.6
> #1 0x00007ffff50a55e5 in abort () from
> /gnu/store/4sqaib7c2dfjv62ivrg9b8wa7bh226la-glibc-2.26.105-g0890d5379c/lib/libc.so.6
> #2 0x00007ffff61c5f0e in QMessageLogger::fatal(char const*, ...) const
> () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #3 0x00007ffff63c5301 in QObjectPrivate::QObjectPrivate(int) () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #4 0x00007fffedaae100 in ?? () from
> /gnu/store/4if0il1fssgh3zna4b3x9lwbgw49z01m-qtbase-5.9.3/lib/qt5/plugins/platforms/../../../libQt5DBus.so.5
> #5 0x00007fffedaaeed4 in
> QDBusAbstractInterface::QDBusAbstractInterface(QString const&, QString
> const&, char const*, QDBusConnection const&, QObject*) () from
> /gnu/store/4if0il1fssgh3zna4b3x9lwbgw49z01m-qtbase-5.9.3/lib/qt5/plugins/platforms/../../../libQt5DBus.so.5
> #6 0x00007fffeda98759 in
> QDBusConnectionInterface::QDBusConnectionInterface(QDBusConnection
> const&, QObject*) () from
> /gnu/store/4if0il1fssgh3zna4b3x9lwbgw49z01m-qtbase-5.9.3/lib/qt5/plugins/platforms/../../../libQt5DBus.so.5
> #7 0x00007fffeda94d18 in ?? () from
> /gnu/store/4if0il1fssgh3zna4b3x9lwbgw49z01m-qtbase-5.9.3/lib/qt5/plugins/platforms/../../../libQt5DBus.so.5
> #8 0x00007fffeda9552d in ?? () from
> /gnu/store/4if0il1fssgh3zna4b3x9lwbgw49z01m-qtbase-5.9.3/lib/qt5/plugins/platforms/../../../libQt5DBus.so.5
> #9 0x00007ffff63c88f1 in QObject::event(QEvent*) () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #10 0x00007ffff639dc63 in QCoreApplication::notifyInternal2(QObject*,
> QEvent*) () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #11 0x00007ffff63a030b in
> QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*)
> () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #12 0x00007ffff63f0583 in ?? () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #13 0x00007ffff17cd5c7 in g_main_context_dispatch () from
> /gnu/store/i1x64fz6m3i1l61vywn5bgdamw0h71c0-glib-2.54.2/lib/libglib-2.0.so.0
> #14 0x00007ffff17cd808 in g_main_context_iterate.isra () from
> /gnu/store/i1x64fz6m3i1l61vywn5bgdamw0h71c0-glib-2.54.2/lib/libglib-2.0.so.0
> #15 0x00007ffff17cd8ac in g_main_context_iteration () from
> /gnu/store/i1x64fz6m3i1l61vywn5bgdamw0h71c0-glib-2.54.2/lib/libglib-2.0.so.0
> #16 0x00007ffff63efbcf in
> QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
> () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #17 0x00007ffff639c25a in
> QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #18 0x00007ffff61d819c in QThread::exec() () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #19 0x00007fffeda939d5 in ?? () from
> /gnu/store/4if0il1fssgh3zna4b3x9lwbgw49z01m-qtbase-5.9.3/lib/qt5/plugins/platforms/../../../libQt5DBus.so.5
> #20 0x00007ffff61dcd6a in ?? () from
> /gnu/store/rr0225gz6qb1j9xwc5iinf1143dg6cw6-qtbase-5.9.4/lib/libQt5Core.so.5
> #21 0x00007ffff4e594d5 in start_thread () from
> /gnu/store/4sqaib7c2dfjv62ivrg9b8wa7bh226la-glibc-2.26.105-g0890d5379c/lib/libpthread.so.0
> #22 0x00007ffff51602cf in clone () from
> /gnu/store/4sqaib7c2dfjv62ivrg9b8wa7bh226la-glibc-2.26.105-g0890d5379c/lib/libc.so.6
>
> So it's apparently Qt DBus related since the version of Qt DBus is 5.9.3 but the other Qt stuff is 5.9.4.
>
> If I unset QT_PLUGIN_PATH, it works.
>
> QT_PLUGIN_PATH was:
>
> $HOME/.guix-profile/lib/qt5/plugins

I believe the plugins are dynamically loaded, so if you were to have a
mixture of plugins built against various versions of Qt, problems could
occur.

I don't see a good solution for that, short of upgrading your whole
profile.

Unless you have ideas to research to improve this situation, I suggest
we close this issue.

What do you think?

Maxim