Trying to represent the meaningful parts of the rest of the discussion below.
<+tronical> tsdgeos: in QQmlEnginePrivate::registerBaseTypes can you insert a qDebug() << "QObject::staticMetaObject is at" << &QObject::staticMetaObject; ? <+tronical> tsdgeos: if we get the wrong address there, then maybe we have a miscompilation of QtQml somehow < tsdgeos> tronical: yeah it's wrong there <+tronical> tsdgeos: ok, that means there's something wrong with libQt5Qml.so < tsdgeos> removing -O2 didn't help <+tronical> ok, that dump looks sane though <+tronical> in particular QObject::staticMetaObject is referenced through a R_ARM_GOT32 relocation <+tronical> can you paste the output of objdump -TRDC /path/to/unity8 ? < tsdgeos> yes < tsdgeos> tronical: http://paste.ubuntu.com/9570566/ <+tronical> aha!! <+tronical> this one has indeed a copy relocation to QObject::staticMetaObject, which it shouldn't have if it's compiled with -fPIE I think (... -fPIE is in use ...) <+tronical> tsdgeos: _some_ source code in the unity8 sources references QObject::staticMetaObject <+tronical> tsdgeos: in that .o file the reference to QObject::staticMetaObject should be through the procedure linkage table, but in your case it must be an absolute reference/relocation, which will cause the linker in turn to create a so-called copy relocation for unity8 as binary. I think it shouldn't have that < tsdgeos> builddir/tests/mocks/Unity/Indicators/moc_sharedunitymenumodel.cpp: { &QObject::staticMetaObject, qt_meta_stringdata_SharedUnityMenuModel.data, <+tronical> oh, that's just a test <+tronical> still, ok, suppose it were valid, then the other question is why when loading the plugin that has QSortFilterProxyModelQML the reference to QObject::staticMetaObject isn't changed to point to the copy relocation <+tronical> tsdgeos: could you try running your app with LD_DEBUG=bindings,symbols and collect the output? it's going to be a lot, so you could email it if it's too big for a paste < tsdgeos> sent <+tronical> tsdgeos: the ld output looks ok but I don't understand yet why the one file that has the QSortFilterProxyModelQML isn't relocated correctly <+tronical> tsdgeos: that comes from libunity8-private.so, right? <+tronical> tsdgeos: I have to leave. let's look at this early next year :) -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1403758 Title: Unity8 shows black screen with Qt 5.4.0 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ubuntu-ui-toolkit/+bug/1403758/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs