[Bug 819437] New: All KDE/Qt programs/libs linking to QT_QTUITOOLS_LIBRARY (might) have to be rebuilt on Qt update
https://bugzilla.novell.com/show_bug.cgi?id=819437 https://bugzilla.novell.com/show_bug.cgi?id=819437#c0 Summary: All KDE/Qt programs/libs linking to QT_QTUITOOLS_LIBRARY (might) have to be rebuilt on Qt update Classification: openSUSE Product: openSUSE 12.3 Version: Final Platform: Other OS/Version: openSUSE 12.3 Status: NEW Severity: Critical Priority: P5 - None Component: KDE4 Applications AssignedTo: kde-maintainers@suse.de ReportedBy: kossebau@kde.org QAContact: qa-bugs@suse.de Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.34 (KHTML, like Gecko) konqueror/4.10.2 Safari/534.34 While investigating a crash I got when using Kross scripts in KDE programs I came across the theory (e.g. in KDE bugzilla for bugs 231077, 303576) that such backtraces are due to https://bugreports.qt-project.org/browse/QTBUG-437
From which I conclude that ideally all libs/programs that link against QtUiTools need to depend hardly on the Qt version they were built against, and on update of the Qt libs need to be rebuilt as a new package. No idea if this is not happening anyway on OBS for the OpenSUSE KDE packages, but in that case I need a new theory for that crash.
libqt4: 4.8.4-3.3.1-x86_64 kross-python: 4.10.2-1.4.1-x86_64 For what it's worth, here a backtrace: Thread 1 (Thread 0x7fad61474780 (LWP 16440)): [KCrash Handler] #5 0x00007fad2d664411 in QFormInternal::domPropertyToVariant(QFormInternal::QAbstractFormBuilder*, QMetaObject const*, QFormInternal::DomProperty const*) () from /usr/lib64/libkjsembed.so.4 #6 0x00007fad2d6151c9 in QFormInternal::QAbstractFormBuilder::toVariant(QMetaObject const*, QFormInternal::DomProperty*) () from /usr/lib64/libkjsembed.so.4 #7 0x00007fad2d62e6b6 in QFormInternal::QFormBuilder::applyProperties(QObject*, QListQFormInternal::DomProperty* const&) () from /usr/lib64/libkjsembed.so.4 #8 0x00007fad2d60d29f in QFormInternal::FormBuilderPrivate::applyProperties(QObject*, QListQFormInternal::DomProperty* const&) () from /usr/lib64/libkjsembed.so.4 #9 0x00007fad2d620709 in QFormInternal::QAbstractFormBuilder::create(QFormInternal::DomWidget*, QWidget*) () from /usr/lib64/libkjsembed.so.4 #10 0x00007fad2d62ea25 in QFormInternal::QFormBuilder::create(QFormInternal::DomWidget*, QWidget*) () from /usr/lib64/libkjsembed.so.4 #11 0x00007fad2d60b56e in QFormInternal::FormBuilderPrivate::create(QFormInternal::DomWidget*, QWidget*) () from /usr/lib64/libkjsembed.so.4 #12 0x00007fad2d623143 in QFormInternal::QAbstractFormBuilder::create(QFormInternal::DomUI*, QWidget*) () from /usr/lib64/libkjsembed.so.4 #13 0x00007fad2d60bbd5 in QFormInternal::FormBuilderPrivate::create(QFormInternal::DomUI*, QWidget*) () from /usr/lib64/libkjsembed.so.4 #14 0x00007fad270509e7 in QFormInternal::QAbstractFormBuilder::load(QIODevice*, QWidget*) () from /usr/lib64/kde4/krossmoduleforms.so #15 0x00007fad2704844d in QUiLoader::load(QIODevice*, QWidget*) () from /usr/lib64/kde4/krossmoduleforms.so #16 0x00007fad27044f91 in ?? () from /usr/lib64/kde4/krossmoduleforms.so #17 0x00007fad270452b3 in ?? () from /usr/lib64/kde4/krossmoduleforms.so #18 0x00007fad27045e90 in ?? () from /usr/lib64/kde4/krossmoduleforms.so #19 0x00007fad27045fbb in ?? () from /usr/lib64/kde4/krossmoduleforms.so #20 0x00007fad2e150746 in ?? () from /usr/lib64/kde4/krosspython.so #21 0x00007fad2de3811a in PyEval_EvalFrameEx () from /usr/lib64/libpython2.7.so.1.0 #22 0x00007fad2de3d303 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.7.so.1.0 #23 0x00007fad2de245b6 in ?? () from /usr/lib64/libpython2.7.so.1.0 #24 0x00007fad2de2040d in PyObject_Call () from /usr/lib64/libpython2.7.so.1.0 #25 0x00007fad2de21171 in ?? () from /usr/lib64/libpython2.7.so.1.0 #26 0x00007fad2de2040d in PyObject_Call () from /usr/lib64/libpython2.7.so.1.0 #27 0x00007fad2de36b62 in PyEval_CallObjectWithKeywords () from /usr/lib64/libpython2.7.so.1.0 #28 0x00007fad2de21df1 in PyInstance_New () from /usr/lib64/libpython2.7.so.1.0 #29 0x00007fad2de2040d in PyObject_Call () from /usr/lib64/libpython2.7.so.1.0 #30 0x00007fad2de382de in PyEval_EvalFrameEx () from /usr/lib64/libpython2.7.so.1.0 #31 0x00007fad2de3d5c3 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.7.so.1.0 #32 0x00007fad2de6b892 in PyEval_EvalCode () from /usr/lib64/libpython2.7.so.1.0 #33 0x00007fad2e16441e in ?? () from /usr/lib64/kde4/krosspython.so #34 0x00007fad2e83461d in Kross::Action::slotTriggered() () from /usr/lib64/libkrosscore.so.4 #35 0x00007fad2e836efd in ?? () from /usr/lib64/libkrosscore.so.4 Reproducible: Always Steps to Reproduce: 1. 2. 3. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c1
Raymond Wooninck
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c2
--- Comment #2 from Friedrich W. H. Kossebau
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c3
--- Comment #3 from Friedrich W. H. Kossebau
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c4
Hrvoje Senjan
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c5
--- Comment #5 from Friedrich W. H. Kossebau
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c6
--- Comment #6 from Hrvoje Senjan
WRT "Tools", it should be an entry in the main menu. OK, found it. For some reason menu didn't expand here every time i tried creating a new empty document. I can reproduce the crash you mentioned. However, i am not convinced it is due to your theory, as all packages in update repo (update/openSUSE-current) are built against the ones in the "regular"(distribution/openSUSE-current/repo/oss) one. And i now tried building kdelibs and kross interpreters (for which i also omitted mentioned LDFLAG) against the exact same Qt version, the crash still happened. Still need to validate does the same happen with building calligra against the same Qt version as those two (note that calligra in regular repo is built against Qt from the same repo).
-- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c7
--- Comment #7 from Friedrich W. H. Kossebau
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c8
--- Comment #8 from Hrvoje Senjan
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c9
--- Comment #9 from Hrvoje Senjan
so i am wondering if that's the case with Kross also. Well, after turning my brain on, i realized that's impossible
-- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c10
--- Comment #10 from Bernhard Wiedemann
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c11
--- Comment #11 from Friedrich W. H. Kossebau
This is an autogenerated message for OBS integration: This bug (819437) was mentioned in https://build.opensuse.org/request/show/175193 Factory / kdelibs4
So seems better than removing Bsymbolic-functions is simply marking libQtUiTools.a as lib whose symbols should not be exported, by + set_target_properties(krossmoduleforms PROPERTIES LINK_FLAGS "-Wl,--exclude-libs -Wl,libQtUiTools.a") ? Any plans to push exclude-qtuitools-symbols-from-public-libraries.patch to upstream? Or do you still want to give this some more testing in OpenSUSE? Thanks for (hopefully) fixing this, will test this as soon as it appears in the repos. Any idea when this will make it to Tumbleweed repos as listed above? Could I test this before somehow? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c12
--- Comment #12 from Hrvoje Senjan
So seems better than removing Bsymbolic-functions is simply marking libQtUiTools.a as lib whose symbols should not be exported, by + set_target_properties(krossmoduleforms PROPERTIES LINK_FLAGS "-Wl,--exclude-libs -Wl,libQtUiTools.a") ? Tested that script import, and building lightdm greeter without that workaround, no crashes with the patch.
Any plans to push exclude-qtuitools-symbols-from-public-libraries.patch to upstream? Or do you still want to give this some more testing in OpenSUSE? Ideally it should go upstream, yes. Will see how it goes first here. Though, i am not convinced it would pass, as that link flag is not default upstream, and i don't think i saw a similar exclusion in other KDE code.
Thanks for (hopefully) fixing this, will test this as soon as it appears in the repos. Any idea when this will make it to Tumbleweed repos as listed above? Could I test this before somehow? You could test it from KDF repo now. No idea when will it hit Tumbleweed, that is a question for Greg KH ;-)
-- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c13
--- Comment #13 from Friedrich W. H. Kossebau
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c14
Hrvoje Senjan
Has not yet hit Tumbleweed. And I feared to wrack my system with KDF. You can track status of 4.10.3 release to 12.3 update here: https://bugzilla.novell.com/show_bug.cgi?id=818500
In the meantime I created a patch for upstream, to solve the problem in a platform independent way, see https://git.reviewboard.kde.org/r/110563/ Noticed :-)
Please have a look (and possibly comment on the patch/comments). Patch looks ok, but as i've mentioned, i am not convienced it'll get in, as that is a custom flag. Noted also Thomases comment, and made me think should we still continue using -Bsymbolic-functions. On another hand, Thiago didn't mention that one should not use the flag (we are using it 4 years already, this is first known issue it's caused so far)
-- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c15
Hrvoje Senjan
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c16
--- Comment #16 from Swamp Workflow Management
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c
Swamp Workflow Management
https://bugzilla.novell.com/show_bug.cgi?id=819437
https://bugzilla.novell.com/show_bug.cgi?id=819437#c17
--- Comment #17 from Swamp Workflow Management
http://bugzilla.novell.com/show_bug.cgi?id=819437
Swamp Workflow Management
participants (1)
-
bugzilla_noreply@novell.com