Joy, I think now I've even hit a gcc bug?
Program received signal SIGSEGV, Segmentation fault.
#0 0x00007ffff69120ce in QMetaObject::activate(QObject*, int, int, void**) (sender=0x0, signalOffset=8, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7fffffffd560) at kernel/qobject.cpp:3592
#1 0x00007ffff6913067 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7ffff703c280 <QGuiApplication::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7fffffffd560) at kernel/qobject.cpp:3582
#2 0x00007ffff6bfa8e2 in QGuiApplication::screenAdded(QScreen*) (this=<optimized out>, _t1=0x66caf0) at .moc/moc_qguiapplication.cpp:321
==> See below, "this" is actually 0x0 here
#3 0x00007ffff6bf15c5 in QPlatformIntegration::screenAdded(QPlatformScreen*, bool) (this=<optimized out>, ps=ps@entry=0x66cb10, isPrimary=isPrimary@entry=true) at kernel/qplatformintegration.cpp:447
#13 0x00007ffff68e6f6f in QCoreApplication::init() (this=this@entry=0x650450) at kernel/qcoreapplication.cpp:726
==> QCoreApplication::self has already been set at this point (QCoreApplication::self = this;)
#14 0x00007ffff71aba87 in QApplication::QApplication(int&, char**, int) (this=0x650450, argc=@0x7fffffffdc3c: 1, argv=0x7fffffffde28, _internal=328704)
(gdb) break qplatformintegration.cpp:447
Breakpoint 1, QPlatformIntegration::screenAdded (this=<optimized out>, ps=ps@entry=0x66cb10, isPrimary=isPrimary@entry=true)
447 emit qGuiApp->screenAdded(screen);
QGuiApplication::screenAdded (this=0x0, _t1=0x66caf0) at .moc/moc_qguiapplication.cpp:319
(gdb) print QGuiApplication::self
$4 = (QCoreApplication *) 0x650450
#define qGuiApp (static_cast<QGuiApplication *>(QCoreApplication::instance()))
with QCoreApplication::instance() returning QGuiApplication::self
==> So "emit qGuiApp->screenAdded(screen);" results in screenAdded being called on a NULL QGuiApplication, but at the same time QGuiApplication::self should be perfectly okay.
--- Additional comment from Sandro Mani on 2015-02-13 11:34:25 EST ---
--- Additional comment from Sandro Mani on 2015-02-16 05:40:38 EST ---
Concerning comment 19: as posted on -devel, this is indeed a GCC bug (specifically, with the gold linker). Workaround is to build qt5 passing -no-use-gold-linker to configure. Filed as , but turns out it was a known issue where not much is being done about it.
See upstream bug
We can workaround this by not using gold in Qt builds (on f22+) until it is fixed
(fyi, initial comments were copied from bug #1083664)
(hopefully) temporary workaround in qt5-qtbase builds:
* Mon Feb 16 2015 Rex Dieter <email@example.com> 5.4.0-13
- -no-use-gold-linker (f22+, #1193044)
removing as blocker while I we have a workaround.
Looks like there is an upstream fix available, could you consider backporting the fix into fedora's packaging?
Looks like upstream fix is available now: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e9c1bdad269c0c3352eebcc9481ed65144001b0b
Ping, any reason(s) not to use the upstream patch?
I'd be happy to help apply it to fedora's packaging if there are no objections.
> Ping, any reason(s) not to use the upstream patch?
> I'd be happy to help apply it to fedora's packaging if there are no
None from me. Please go ahead.
It would appear that f22 and subsequent branches (f23/master) are tracking different versions currently:
I'll make the change to master, probably merge back to f23.
How would you prefer to handle f22? merge (and upgrade 2.25 -> 2.25.1) or cherry-pick?
Cherry pick please. Upgrading to 2.25, whilst a nice idea, is likely to introduce more problems than it fixes.
binutils-2.25-13.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2015-14227
binutils-2.25-13.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.\nIf you want to test the update, you can install it with \n su -c 'yum --enablerepo=updates-testing update binutils'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-14227
binutils-2.25-13.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.
fyi, matching f22 update for posterity,