Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Various Qt apps launch with broken GUI when built with LTO #444

Open
barolo opened this issue Nov 22, 2019 · 50 comments
Open

Various Qt apps launch with broken GUI when built with LTO #444

barolo opened this issue Nov 22, 2019 · 50 comments

Comments

@barolo
Copy link

barolo commented Nov 22, 2019

For some reason it's only emulators, probably because that's what I'm into currently.
When built with LTO, dolphin emulator ( which has LTO use flag ) citra, rpcs3. Probably other Qt apps. Will launch with broken/stuck GUI. Console throwing missing signal errors.

Any ideas on what's going on? Or where it would be best to start investigate this?

GCC 9.2.0-r2, LD.bfd, Qt 5.13.2 ( happens with 5.12.x 5.14.x too )

Update: It's related to the New Slot Signal code syntax introduced by Qt in 5.x.
The reason I've noticed it first with emulators is that they have very actively developed GUIs and were first to adapt.
There are other apps affected as I've already found and more will follow obviously.
Qt guys are saying ( their bugtracker, everything related got closed unresolved ) that it's a compiler bug, compiler guys are saying that it's expected behaviour defined by ABI ( somebody please hold me.... )

@jiblime
Copy link
Contributor

jiblime commented Nov 22, 2019

  • Please post your C/CXX/LDFLAGS

Run these:

emerge --info dev-qt/qtcore | tail
emerge --info games-emulation/dolphin | tail

And paste the error messages, too, for more help diagnosing what is going on.

@barolo
Copy link
Author

barolo commented Nov 22, 2019

@jiblime

dev-qt/qtcore-5.13.2::gentoo was built with the following:
USE="icu -debug -systemd -test" ABI_X86="(64)"
CFLAGS="-O3 -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -flto=4 -fuse-linker-plugin -march=native -O3 -pipe -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
CXXFLAGS="-O3 -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -flto=4 -fuse-linker-plugin -march=native -O3 -pipe -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -Wl,-O1  -O3 -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -flto=4 -fuse-linker-plugin -march=native -pipe"

Dolphin is git but the same thing happens with stable, irregardless of the lto use flag enabled/disabled

games-emulation/dolphin-9999::gentoo was built with the following:
USE="alsa evdev ffmpeg pulseaudio qt5 -bluetooth -discord-presence -doc -libav -log -lto -profile -systemd -upnp" ABI_X86="(64)"
CFLAGS="-O3 -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -flto=4 -fuse-linker-plugin -march=native -O3 -pipe -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
CXXFLAGS="-O3 -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -flto=4 -fuse-linker-plugin -march=native -O3 -pipe -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -Wl,-O1 -O3 -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -flto=4 -fuse-linker-plugin -march=native -pipe"

This is what gets spammed repeatedly, with various ui elements, when it finally launches with completely nonfunctional gui

QObject::connect: signal not found in QTimer
QObject::connect: signal not found in QXcbGlibEventDispatcher
QObject::connect: signal not found in QObject
QObject::connect: signal not found in QObject
QObject::connect: signal not found in QSocketNotifier
QObject::connect: signal not found in QSocketNotifier
QObject::connect: signal not found in QMenu
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QMenu
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QMenu
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QMenu
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QMenu
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QAction
QObject::connect: signal not found in QMenu

Can someone reproduce this?

@barolo
Copy link
Author

barolo commented Nov 22, 2019

@jiblime I've been googling around and it's a know bug, but Qt says it isn't. HTF it isn't? Some say it's clang bug [I'm using GCC].
https://bugreports.qt.io/browse/QTBUG-43556
https://bugreports.qt.io/browse/QTBUG-61710
And dolphin is aware of this but just says that it will break the build...
https://github.com/dolphin-emu/dolphin/wiki/Building-With-Qt
RPCS3 bug:
RPCS3/rpcs3#2959

Is somebody able to figure this out?

Not to mention that dolphin itself has lto flag which in current state is probably a reportable ebuild bug.

@barolo
Copy link
Author

barolo commented Nov 22, 2019

Apparently "New Signal Slot Syntax" of Qt is breraking LTO in both clang and gcc and everybody is fine with it, resorting to the "pass the blame" game when asked...

If it doesn't get resolved we can expect more LTO breakage can't we?

@barolo barolo changed the title Various Qt apps fail to launch when buil with LTO Various Qt apps fail to launch when built with LTO Nov 22, 2019
@barolo barolo changed the title Various Qt apps fail to launch when built with LTO Various Qt apps launch with broken GUI when built with LTO Nov 22, 2019
@InBetweenNames
Copy link
Owner

I'm on Qt 5.14.0_beta3 with the latest KDE 5.17.3, full LTO and not seeing any problems. GCC 9.2.0-r2 with ld.bfd, for the record. I am using prelink. How is your qtcore built?

@barolo
Copy link
Author

barolo commented Nov 23, 2019

@InBetweenNames Did you try it with dolphin emu ( with lto, just compile it, open it and try doing anything with GUI )? Not asking for other stuff since they're not from gentoo's overlay.
II'm on the same stuff as you including Qt beta
It's specific to apps using new slot syntax of Qt in the code, as I've mentioned already
I've already tried various rebuilds of qtcore, including with its defaults, no dice

@jiblime
Copy link
Contributor

jiblime commented Nov 23, 2019

Edit: Unrelated to the issue at hand. All of my KDE related runtime crashes were due to having USE debug enabled for dev-qt/qtcore. Everything works fine now.


I'm on Qt 5.14.0_beta3 with the latest KDE 5.17.3, full LTO and not seeing any problems. GCC 9.2.0-r2 with ld.bfd, for the record. I am using prelink. How is your qtcore built?

What is your current set of global C/CXX/LDFLAGS? I was fine at 5.12, then issues at 5.13, 5.14, and now that I've downgraded to 5.12 again the pthread problems persist.

@barolo
Copy link
Author

barolo commented Nov 24, 2019

@jiblime Guys, I'm asking about specific apps, everything else is fine. Can you at least reproduce games-emulation/dolphin bug? [with lto]
The reason why only specific apps fail is that they use new coding syntax of Qt for slots/signaling.
This has nothing to do with pthread.
Rest is fine

@jiblime
Copy link
Contributor

jiblime commented Dec 22, 2019

I was able to reproduce an error with kfind in a different distro, so your suspicion that it is due to Qt is likely.

@elsandosgrande
Copy link
Contributor

I will report again after my updates finish, but I see no such issues with kde-apps/kfind-19.08.3, which is, in my estimate, about two to three weeks old, so most likely still newer than the ticket creation date.

@barolo
Copy link
Author

barolo commented Dec 22, 2019

@jiblime @elsandosgrande

I have no issues with kfind, checked both kfind-19.12.0 and master, also compiled manually to make sure it's LTOed. It does use the new QT syntax indeed. Yet it works, that said, it's very tiny app, lto doesn't have much to do here, the ones with issues are massive in comparison.

It would be nice if someone actually checked one of the abovementioned apps, from repo it would be games-emulation/dolphin, from overlays either citra or rpcs3 [ citra being the much lighter one to compile ]

@elsandosgrande
Copy link
Contributor

I will check Dolphin out after the New Year. I already have it installed, but I haven't yet had the time to play Paper Mario The Thousand-Year Door.

Hopes that he can find a copy of Paper Mario to play as well

@jiblime
Copy link
Contributor

jiblime commented Jan 14, 2020

It would be nice if someone actually checked one of the abovementioned apps, from repo it would be games-emulation/dolphin, from overlays either citra or rpcs3 [ citra being the much lighter one to compile ]

I'm having issues with rpcs3, the ebuild I am using is rather old and some of the macros defined no longer exist it seems. Can you link the one you are using?

I've tried editing one I found on gpo.zugaina.org/ but it is by no means in working condition.

/var/tmp/portage/games-emulation/rpcs3-9999/work/rpcs3-9999/rpcs3/Emu/Cell/Modules/cellGcmSys.cpp:425:112:   required from here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits:2336:26: internal compiler error: in build_over_call, at cp/call.c:8560
 2336 |       std::declval<_Fn>()(std::declval<_Args>()...)
      |       ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
# Copyright 1999-2019 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit cmake-utils git-r3

DESCRIPTION="PlayStation 3 emulator"
HOMEPAGE="https://rpcs3.net/"
EGIT_REPO_URI="https://github.com/RPCS3/rpcs3"
KEYWORDS=""

LICENSE="GPL-2"
SLOT="0"
IUSE="+alsa +joystick -llvm +pulseaudio +vulkan"

RDEPEND="
	>=dev-qt/qtcore-5.7
	>=dev-qt/qtdbus-5.7
	>=dev-qt/qtgui-5.7
	>=dev-qt/qtwidgets-5.7
	alsa? ( media-libs/alsa-lib )
	joystick? ( dev-libs/libevdev )
	llvm? ( sys-devel/llvm:4 )
	media-libs/glew:0
	media-libs/libpng:*
	media-libs/openal
	pulseaudio? ( media-sound/pulseaudio )
	sys-libs/zlib
	virtual/ffmpeg
	virtual/opengl
	vulkan? ( media-libs/vulkan-loader )
	x11-libs/libX11
	"

DEPEND="${RDEPEND}
	"

EGIT_SUBMODULES=(
	'*'
	'-rpcs3-ffmpeg'
	'-llvm'
	'-3rdparty/libpng'
	'-3rdparty/zlib'
)

src_prepare() {
	default

	sed -i -e '/find_program(CCACHE_FOUND/d' CMakeLists.txt
	sed -i \
		-e 's/llvm_map_components_to_libnames(LLVM_LIBS/llvm_map_components_to_libnames(LLVM_LIBS core support executionengine object runtimedyld x86desc x86info scalaropts/' \
		rpcs3/CMakeLists.txt

	cmake-utils_src_prepare
}

src_configure() {
	local mycmakeargs=(
		"-DUSE_SYSTEM_LIBPNG=ON"
		"-DUSE_SYSTEM_FFMPEG=ON"
		"-DUSE_SYSTEM_ZLIB=ON"
		"-DUSE_VULKAN=$(usex vulkan ON OFF)"
		"-DUSE_ALSA=$(usex alsa ON OFF)"
		"-DUSE_PULSE=$(usex pulseaudio ON OFF)"
		"-DUSE_LIBEVDEV=$(usex joystick ON OFF)"
		"-DWITH_LLVM=$(usex llvm ON OFF)"
		"-DBUILD_LLVM_SUBMODULE=$(usex llvm ON OFF)"
		"-DUSE_VULKAN=$(usex vulkan ON OFF)"
		"-DCMAKE_BUILD_TYPE=Release"
	)

	cmake-utils_src_configure
}

I haven't given it a deep look but it seems as thought enabling llvm will mean having to compile LLVM itself to use with building rpcs3?

@jiblime
Copy link
Contributor

jiblime commented Jan 14, 2020

Regarding games-emulation/dolphin, here is my build info. I'll test a game in a bit and edit this post.

Edit: I've only tested one .iso and building with LTO or not I end up with:
dri_create_context: requested glthread but driver is missing backgroundCallable V2 extension

So can't help much with your problem yet..

games-emulation/dolphin-5.0::gentoo was built with the following:
USE="alsa bluetooth egl evdev ffmpeg log lto pch pulseaudio qt5 
     sdl wxwidgets -ao -doc -libav -openal -portaudio -profile -upnp"
ABI_X86="(64)"

GCC and binutils use custom patches but I don't think that would affect this particular case.

sys-devel/gcc-9.2.0-r3::local was built with the following:
USE="custom-cflags (cxx) debug fortran graphite (multilib) nls nptl objc openmp pch sanitize ssp (-altivec) -d -doc (-fixed-point) -go (-hardened) -jit (-libssp) -lto -objc++ -objc-gc -pgo -pie -systemtap -test -vanilla -vtv" ABI_X86="(64)"
CFLAGS="-O3 -march=native -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fno-semantic-interposition -fvect-cost-model=unlimited --param=max-isl-operations=0 -flimit-function-alignment -minline-stringops-dynamically -pipe -fuse-linker-plugin"
CXXFLAGS="-O3 -march=native -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fno-semantic-interposition -fvect-cost-model=unlimited --param=max-isl-operations=0 -flimit-function-alignment -minline-stringops-dynamically -pipe -fuse-linker-plugin"

sys-devel/binutils-2.33.1-r1::jiblime-overlay was built with the following:
USE="custom-patches gold lto multitarget nls plugins static-libs -custom-cflags -default-gold -doc -ssp -test" ABI_X86="(64)"
CFLAGS="-march=native -pipe -O2 -flto=24 -ffat-lto-objects"
CXXFLAGS="-march=native -pipe -O2 -flto=24 -ffat-lto-objects"

dev-qt/qtcore-5.14.0::gentoo was built with the following:
USE="icu systemd -debug -test" ABI_X86="(64)"
CFLAGS="-O2 -march=native -pipe -fuse-linker-plugin"
CXXFLAGS="-O2 -march=native -pipe -fuse-linker-plugin"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"


dev-qt/qtgui-5.14.0-r1::gentoo was built with the following:
USE="dbus debug egl eglfs evdev gif ibus jpeg libinput png udev wayland xcb -accessibility (-gles2) -test -tslib -tuio -vnc" ABI_X86="(64)"
CFLAGS="-O3 -march=native -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fno-semantic-interposition -fvect-cost-model=unlimited --param=max-isl-operations=0 -flimit-function-alignment -minline-stringops-dynamically -pipe -fuse-linker-plugin"
CXXFLAGS="-O3 -march=native -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fno-semantic-interposition -fvect-cost-model=unlimited --param=max-isl-operations=0 -flimit-function-alignment -minline-stringops-dynamically -pipe -fuse-linker-plugin"


dev-qt/qtwidgets-5.14.0::gentoo was built with the following:
USE="debug gtk png xcb (-gles2) -test" ABI_X86="(64)"
CFLAGS="-O3 -march=native -fgraphite-identity -floop-nest-optimize -fipa-pta -fdevirtualize-at-ltrans -fno-semantic-interposition -flto -fvect-cost-model=unlimited --param=max-isl-operations=0 -flimit-function-alignment -minline-stringops-dynamically -pipe -fuse-linker-plugin"
CXXFLAGS="-O3 -march=native -fgraphite-identity -floop-nest-optimize -fipa-pta -fdevirtualize-at-ltrans -fno-semantic-interposition -flto -fvect-cost-model=unlimited --param=max-isl-operations=0 -flimit-function-alignment -minline-stringops-dynamically -pipe -fuse-linker-plugin"

dolphin-5.0-build_nocolor.log

@barolo
Copy link
Author

barolo commented Jan 15, 2020

@jiblime It would be very obvious if you'd experienced what I've had as the launch of dolphin is very slow, gui is unusable and trying to use it will hang the app. Launching any game is impossible.
Make sure to disable wxwidgets interface and build only the Qt5 one.

@jiblime
Copy link
Contributor

jiblime commented Jan 15, 2020

@barolo Thank you for the advice. Removing USE wxwidgets didn't help, but I was able to get it running with this:

games-emulation/dolphin-5.0::gentoo was built with the following:
USE="alsa bluetooth evdev ffmpeg lto pulseaudio qt5 sdl -ao -doc
     -egl -libav -log -openal -pch -portaudio -profile -upnp -wxwidgets"
ABI_X86="(64)"

I was able to replicate your described issue with both the 5.0 ebuild and the live ebuild, using the same USE flags above. Everything was very slow, and removing LTO from the build fixed the lag.

In the live ebuild version I am using dolphin-emu is the Qt GUI binary as opposed to dolphin-emu-qt2 for 5.0. This is with commit ab07841e1bfdd88e4498106df8f4820270f611fb.

$ dolphin-emu -l -e /path/to/iso QObject::connect: signal not found in QTimer QObject::connect: signal not found in QSocketNotifier QObject::connect: signal not found in QSocketNotifier QObject::connect: signal not found in Breeze::Style QObject::connect: signal not found in Breeze::Style QObject::connect: signal not found in QXcbGlibEventDispatcher QObject::connect: signal not found in KIconLoaderGlobalData QObject::connect: signal not found in QObject QObject::connect: signal not found in QObject QDBusConnection: warning: blocking call took a long time (25286 ms, max for this thread is 200 ms) to service "org.freedesktop.DBus" path "/org/freedesktop/DBus" interface "org.freedesktop.DBus" member "NameHasOwner" QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QMenu QObject::connect: signal not found in QMenu QObject::connect: signal not found in QMenu QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QMenu QObject::connect: signal not found in QDBusServiceWatcher QDBusConnection: warning: blocking call took a long time (24998 ms, max for this thread is 200 ms) to service "org.freedesktop.DBus" path "/org/freedesktop/DBus" interface "org.freedesktop.DBus" member "NameHasOwner" QObject::connect: signal not found in QMenu QObject::connect: signal not found in QMenu QObject::connect: signal not found in QMenu QObject::connect: signal not found in QMenu QObject::connect: signal not found in QMenu QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in ToolBar QObject::connect: signal not found in QAction QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QPushButton QObject::connect: signal not found in GameTracker QObject::connect: signal not found in GameTracker QObject::connect: signal not found in QObject QObject::connect: signal not found in QTableView QObject::connect: signal not found in QItemSelectionModel QObject::connect: signal not found in QHeaderView QObject::connect: signal not found in QHeaderView QObject::connect: signal not found in QHeaderView QObject::connect: signal not found in QHeaderView QObject::connect: signal not found in QHeaderView QObject::connect: signal not found in QListView QObject::connect: signal not found in QItemSelectionModel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QTableView QObject::connect: signal not found in QListView QObject::connect: signal not found in GameListModel QObject::connect: signal not found in GameListModel QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QTimer QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QLabel QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSlider QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in LogWidget QObject::connect: signal not found in QTimer QObject::connect: signal not found in LogWidget QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QListWidget QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in MemoryViewWidget QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QTableWidget QObject::connect: signal not found in QTableWidget QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QTableWidget QObject::connect: signal not found in QTableWidget QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QTableWidget QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in QDockWidgetTitleButton QObject::connect: signal not found in CodeViewWidget QObject::connect: signal not found in CodeViewWidget QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QListWidget QObject::connect: signal not found in QListWidget QObject::connect: signal not found in QListWidget QObject::connect: signal not found in QListWidget QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QRadioButton QObject::connect: signal not found in QDialogButtonBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QTableWidget QObject::connect: signal not found in QTableWidget QObject::connect: signal not found in QTableWidget QObject::connect: signal not found in QLabel QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QToolButton QObject::connect: signal not found in QLabel QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QObject QObject::connect: signal not found in QObject QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QListWidget QObject::connect: signal not found in QListWidget QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QDialogButtonBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QCheckBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QLabel QObject::connect: signal not found in QDialogButtonBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QDialogButtonBox QObject::connect: signal not found in QDialogButtonBox QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QGroupBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QLabel QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QComboBox QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QTableWidget QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QLineEdit QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QPushButton QObject::connect: signal not found in QAction QObject::connect: signal not found in QSpinBox QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction QObject::connect: signal not found in NetPlayDialog QObject::connect: signal not found in QSocketNotifier QObject::connect: signal not found in MenuBar QObject::connect: signal not found in QToolBarSeparator QObject::connect: signal not found in QToolBarSeparator QObject::connect: signal not found in ToolBar QObject::connect: signal not found in GameList QObject::connect: signal not found in QWidget QObject::connect: signal not found in QStackedWidget QObject::connect: signal not found in QTabBar QObject::connect: signal not found in MainWindow QObject::connect: signal not found in RenderWidget QObject::connect: signal not found in QObject QObject::connect: signal not found in QObject QObject::connect: signal not found in Updater QObject::connect: signal not found in QObject QObject::connect: signal not found in KFontSettingsData QObject::connect: signal not found in KHintsSettings QObject::connect: signal not found in KHintsSettings QObject::connect: signal not found in QShortcut QObject::connect: signal not found in QObject QObject::connect: signal not found in QObject QObject::connect: signal not found in QMenu QObject::connect: signal not found in QMenu

Without LTO, dolphin-emu -l does not give any messages. In every version/USE flag iteration I was still able to get the game running smoothly with dolphin-emu-nogui, as expected since this is related to Qt.

Really just echoing everything you've already posted. As you've stated in the OP, it's related to the new syntax in Qt 5. I suppose it can be possible to use the old syntax instead since it is still supported? The relevant files are in ${S}/Source/Core/DolphinQt.

@pchome
Copy link
Contributor

pchome commented Jan 15, 2020

@barolo
Try dev-qt/* w/o -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition flags. I had no issues w/ "signals" or dolphin-emu GUI, but doing so fixes fontconfig rendering in native Qt5 apps for me. Fonts were different for unknown reason in Qt5/QtQuick/Kirigami/etc. applications.

I'm not sure which one (flag), but -fdevirtualize-at-ltrans and -fno-semantic-interposition was added recently, while -fipa-pta was present for a long time in my *FLAGS.

@barolo
Copy link
Author

barolo commented Jan 15, 2020

@jiblime Thanks for confirming. What you propose is basically forking dolphin, current build has a massive GUI. Not to mention that it affects other apps which use new syntax. That's just not doable long term. Qt refuses to fix it, it looks like only the compiler guys can do something about it.

@pchome
Copy link
Contributor

pchome commented Jan 15, 2020

Out of curiosity I installed it again, still no issues. Didn't do extended test, but GUI responsive and buttons are ok. No messages in terminal.

No custom patches or overrides for games-emulation/dolphin was used.

games-emulation/dolphin-9999::gentoo was built with the following:
USE="alsa evdev ffmpeg lto pulseaudio qt5 -bluetooth -discord-presence -doc -libav -log -profile -systemd -upnp" ABI_X86="(64)"
CFLAGS="-march=native -O3 -pipe -fgraphite-identity -ftree-loop-distribution -floop-nest-optimize -flto=3 -fuse-linker-plugin -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
CXXFLAGS="-march=native -O3 -pipe -fgraphite-identity -ftree-loop-distribution -floop-nest-optimize -flto=3 -fuse-linker-plugin -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"

@barolo
Copy link
Author

barolo commented Jan 15, 2020

@pchome I'll recompile it with your suggestions later on, thanks for the feedback

@barolo
Copy link
Author

barolo commented Jan 16, 2020

Out of curiosity I installed it again, still no issues. Didn't do extended test, but GUI responsive and buttons are ok. No messages in terminal.

No custom patches or overrides for games-emulation/dolphin was used.

games-emulation/dolphin-9999::gentoo was built with the following:
USE="alsa evdev ffmpeg lto pulseaudio qt5 -bluetooth -discord-presence -doc -libav -log -profile -systemd -upnp" ABI_X86="(64)"
CFLAGS="-march=native -O3 -pipe -fgraphite-identity -ftree-loop-distribution -floop-nest-optimize -flto=3 -fuse-linker-plugin -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
CXXFLAGS="-march=native -O3 -pipe -fgraphite-identity -ftree-loop-distribution -floop-nest-optimize -flto=3 -fuse-linker-plugin -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"

@pchome That's not it, I've recompiled dev-qt with the flags mentioned removed and it still happens [ and compiled with ones identical to yours ]. Could your post your env, emerge --info?

@barolo
Copy link
Author

barolo commented Jan 16, 2020

@pchome you not having any bugs with LTO is even weirder than us having them, since dolphin's wiki explicitly states that you'll have them when using LTO.

@elsandosgrande
Copy link
Contributor

Hm... I wonder what will happen after I rebuild my entire Gentoo tree with the masked GCC 10.

Yeah, I second what barolo is saying. Maybe you have something special in your make.conf that we do not? What does emerge --info say?

@pchome
Copy link
Contributor

pchome commented Jan 16, 2020

First of all I'm not using this overlay, also my overrides list is extremely short.
Skipping a ton of my local overlays and useless info, the short brief will be

Portage 2.3.84 (python 3.7.6-final-0, default/linux/amd64/17.1/desktop/plasma, gcc-9.2.0, glibc-2.30-r3, 5.4.12-gentoo x86_64)
ACCEPT_KEYWORDS="amd64 ~amd64"
CFLAGS="-march=native -O3 -pipe -fgraphite-identity -ftree-loop-distribution -floop-nest-optimize -flto=3 -fuse-linker-plugin"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -march=native -O3 -pipe -fgraphite-identity -ftree-loop-distribution -floop-nest-optimize -flto=3 -fuse-linker-plugin"
MAKEOPTS="-j4"

# make.conf
CMAKE_MAKEFILE_GENERATOR=ninja
AR=gcc-ar
NM=gcc-nm
RANLIB=gcc-ranlib

# package.cflags, you likely have most of them
sys-apps/acl *FLAGS-=-flto*
sys-apps/sandbox *FLAGS-=-flto*
dev-util/spirv-cross *FLAGS-=-flto*
sys-libs/glibc *FLAGS-=-flto* *FLAGS-="-fno-plt"
x11-base/xorg-server "export xorg_cv_linker_flags__Wl__wrap_exit=no"
sys-fs/fuse:0 *FLAGS-=-flto*
dev-libs/elfutils "export EXTRA_ECONF=--disable-symbol-versioning"
dev-util/perf *FLAGS-="-flto*"
dev-qt/qtscript *FLAGS-="-flto*"
media-libs/libsdl2 "export _FLAG_O_MATIC_ECLASS=1"
net-im/pidgin "export _FLAG_O_MATIC_ECLASS=1"
x11-libs/gtk+:2 "export _FLAG_O_MATIC_ECLASS=1"
app-editors/vim-core "export _FLAG_O_MATIC_ECLASS=1"
app-editors/vim "export _FLAG_O_MATIC_ECLASS=1"
sys-libs/ncurses *FLAGS-="-Wl,--as-needed" LDFLAGS+="-ldl"
net-misc/openssh *FLAGS-="-flto*"
app-emulation/wine* *FLAGS-="-flto*"
media-sound/jack2 *FLAGS-="-flto*"
kde-apps/dolphin *FLAGS-="-Wl,--as-needed"
dev-db/mysql-connector-c *FLAGS-="-flto*"

NOTE:

  • I have a very minimal set of packages installed, so even if I need more overrides I don't have them now.
  • I removed -fipa-pta a few days ago, some packages are still built using this flag, but appeared it causes too many silent errors for me.
  • I tried to use -fdevirtualize-at-ltrans and -fno-semantic-interposition too for short period of time, but removed them too along with -fipa-pta. Just in case.

UPD:

/etc/portage/package.cflags/emake:kde-plasma/kinfocenter CMAKE_MAKEFILE_GENERATOR=emake
/etc/portage/package.cflags/fix:app-admin/sysklogd "export MAKEOPTS=-j1"

/etc/portage/package.cflags/ipa:sys-devel/gcc *FLAGS-="${IPA}"
/etc/portage/package.cflags/ipa:app-shells/bash *FLAGS-="${IPA}"
/etc/portage/package.cflags/ipa:dev-lang/spidermonkey *FLAGS-="${IPA}"

/etc/portage/package.cflags/lto-lomem:kde-frameworks/kjs *FLAGS-=-flto*

/etc/portage/package.cflags/seminterpos:app-misc/tracker *FLAGS-="${SEMINTERPOS}" # builds but makes gnome-base/nautilus deadlock
/etc/portage/package.cflags/seminterpos:net-fs/autofs *FLAGS-="${SEMINTERPOS}"    # builds but segfault in lookup_file.so
/etc/portage/package.cflags/seminterpos:net-print/cups *FLAGS-="${SEMINTERPOS}"   # ICE
/etc/portage/package.cflags/seminterpos:sys-devel/llvm *FLAGS-="${SEMINTERPOS}"
/etc/portage/package.cflags/seminterpos:sys-libs/glibc *FLAGS-="${SEMINTERPOS}"

@barolo
Copy link
Author

barolo commented Jan 16, 2020

@pchome Which GCC?

@elsandosgrande
Copy link
Contributor

To quote pchome's emerge info, Portage 2.3.84 (python 3.7.6-final-0, default/linux/amd64/17.1/desktop/plasma, gcc-9.2.0, glibc-2.30-r3, 5.4.12-gentoo x86_64).

@barolo
Copy link
Author

barolo commented Jan 16, 2020

Yeah, I've asked to fast.
I have no idea what's going on, I might recompile everything with defaults but I'm pretty sure that I've done that already...

@elsandosgrande
Copy link
Contributor

@pchome

  1. Why -Wl,--hash-style=gnu?
  2. What were your issues with the flags in your notes (please provide an example or two per flag if possible)?
  3. Given that GCC 10 is still compiling (boy is it a chunky compiler at this point) and the rebuild of my entire tree is not exactly going to be done in a flash either, is there any chance that you could try the other flags from GentooLTO in the meantime and pinpoint the culprit?

@barolo
Copy link
Author

barolo commented Jan 16, 2020

@elsandosgrande I'm going to try gcc-10 tonight, with all depends of qt/dolphin recompiled against it, all defaults. Will report tomorrow

@elsandosgrande
Copy link
Contributor

Good luck!

@pchome
Copy link
Contributor

pchome commented Jan 17, 2020

@elsandosgrande

  1. Lack of live sync with the overlay. No big deal for this one.
  2. -fipa-pta ? See overrides, if it don't fail on compile-time, then it can break something on run-time. Maybe you will never notice what exactly broken. Wine's virtual desktop feature for example.
    Other overrides are just a copy/paste or similar to what already present in the overlay. Not in live sync too.

@elsandosgrande
Copy link
Contributor

@elsandosgrande

  1. Do you have Gitter?
  2. My third point from above still stands.

@barolo
Copy link
Author

barolo commented Jan 17, 2020

Tried GCC 10 with purged lto-overlay since it seems to be the sole difference with @pchome , all system defaults. Rebuilt world... and it still happens!
This is puzzling and peculiar

@barolo
Copy link
Author

barolo commented Jan 17, 2020

@pchome Could you recompile dolphin one more time and provide a build log?
And upload dolphin's binaries? Wonder if it would still happen with yours

@pchome
Copy link
Contributor

pchome commented Jan 17, 2020

My USE flags for some dev-qt/* packages, which are not default or may differ:

  • dev-qt/qtgui (dbus egl evdev gif jpeg libinput png udev xcb -accessibility -debug -eglfs -gles2 -ibus -test -tslib -tuio -vnc -wayland)
  • dev-qt/qtwidgets (png xcb -debug -gles2 -gtk -test)

So, I can see -wayland and -gtk are enabled in your prev comments, I doubt this is the reason, but there is still a little chance it is.

Also, I still have EXTRA_CXXFLAGS="${CXXFLAGS}" and EXTRA_LFLAGS="${LDFLAGS}" enabled in package.env for dev-qt/qtcore. Was the fix for build failure IIRC, not sure those still needed.

I'll "play" with dolphin later.

@barolo
Copy link
Author

barolo commented Jan 17, 2020

@pchome The only thing that differs in USE flags now is the wayland one, I really doubt that it would have any effect. But sure, lemme try.
I've never had any build failures with qtcore.
Just do a generic build and upload it. What's your cpu?
[ @jiblime I've totally missed your post about rpcs3, recently I was building it from git not overlay, citra is better one to test anyway since rpcs3 pulls it's own llvm ]

@elsandosgrande
Copy link
Contributor

  1. How in the world did you finish emerge --verbose --emptytree @world in such a short time!?
  2. How did you not encounter the -fno-common issues (https://forums.gentoo.org/viewtopic-p-8410480.html, next-to-last reply)?
  3. I remember that I tried "Paper Mario: The Thousand-Year Door" sometime in the middle of this past semester (probably a month before you opened this ticket) and had no issues, which was surprising to me given that my laptop only has two cores (I expected it to be slow as Hell, but it was very smooth). It was built as I originally said it was (the emerge --info games-emulation/dolphin output way above).

Hm... Did you try running Dolphin on Wayland (I cannot remember whether I asked or not)?

@barolo
Copy link
Author

barolo commented Jan 17, 2020

  1. SSD plus parallel fetch/compilation of everything in RAM [ my portage is compressed in tmp too ]
    remember that I'm doing system defaults rebuild, so no LTO/O3 etc.
  2. I was aware of that, very few packages are affected
  3. It started recently, with switch to Qt 5.XX and introduction/use of new syntax by Qt, I was able to use LTO with dolphin before that

I did, Wayland is of no consequence

@elsandosgrande
Copy link
Contributor

It started recently, with switch to Qt 5.XX and introduction/use of new syntax by Qt

Do you know when exactly (or, at least, in which month)?

@barolo
Copy link
Author

barolo commented Jan 17, 2020

Nope, I had a break from gaming. Why would it matter anyway? I know that it's due to changes in QT as there are multiple related bugs reported [ It doesn't explain the mystery of pchome env working though ] and updating of the code to the new syntax by the devs, I could find these commits in dolphin's git but what would that change?

@elsandosgrande
Copy link
Contributor

Because I have tried Dolphin some time within one month of you opening the ticket here (before the ticket, I believe).

@barolo
Copy link
Author

barolo commented Jan 17, 2020

Because I have tried Dolphin some time within one month of you opening the ticket here (before the ticket, I believe).

Which one? stable? Stable [ was released 3 years 6 month ago and doesn't have bunch of new features ] defaults to wxwidgets interface which is long gone from the master
You need to enable a Qt one, as mentioned in one of the posts above, which is now the default.

@elsandosgrande
Copy link
Contributor

games-emulation/dolphin-5.0::gentoo was built with the following:
USE="alsa bluetooth egl evdev ffmpeg lto openal pch pulseaudio qt5 sdl wxwidgets -ao -doc -libav -log -portaudio -profile -upnp" ABI_X86="(64)"

You tell me.

@barolo
Copy link
Author

barolo commented Jan 18, 2020

@elsandosgrande Yup, you had the wxwidgets one, you'd have to use -wxwidgets.
Words of warning, GCC10ing everything hardbroke my network stack ( you'll end without network which is always scary ) plus I couldn't compile kernel anylonger.
GCC10 din't change anything in regard to the main issue.
Moved back to 9 since

@elsandosgrande
Copy link
Contributor

  1. All right, -wxwidgets it is.
  2. Yeah... -fcommon seems to be necessary for the kernel as well.
  3. If the network is the only thing gone awry, I can probably get through that.

@barolo
Copy link
Author

barolo commented Jan 19, 2020

I've rebuilt system twice with gentoo's defaults/purged GLTO just to have control group, and the applied GLTO to match @pchome. In both cases I had the same failures with dolphin-emu when it was LTOed.

The last thing that I'll try is EXTRA_CXXFLAGS="${CXXFLAGS}" and EXTRA_LFLAGS="${LDFLAGS}" enabled in package.env for dev-qt/qtcore
But already reading @pchome posts I know that there must be a serious differentiating factor we're not aware of as he mentioned bugs that I've never experienced.

hcorion added a commit to hcorion/rpcs3 that referenced this issue Mar 19, 2020
Turns out linking with LTO still doesn't play nice with Qt.
For reference:
InBetweenNames/gentooLTO#444
https://bugreports.qt.io/browse/QTBUG-61710
Nekotekina pushed a commit to RPCS3/rpcs3 that referenced this issue Mar 19, 2020
Turns out linking with LTO still doesn't play nice with Qt.
For reference:
InBetweenNames/gentooLTO#444
https://bugreports.qt.io/browse/QTBUG-61710
@telans
Copy link
Contributor

telans commented Jan 27, 2021

From what I understand this may be fixed for Clang/LLVM in 12.0.0-rc1 (assuming it's the same issue?):
https://bugs.llvm.org/show_bug.cgi?id=46469#c34

Should be tagged today ("Upcoming Releases"): https://llvm.org/

@telans
Copy link
Contributor

telans commented Jan 29, 2021

Some good news, some bad I suppose.

After rebuilding dev-qt/{qtcore,qtwidgets} with LLVM 12.0.0_rc1 (including LLVM related packages) and affected Qt programs, I no longer segfault in every program without further output. Some programs like pinentry-qt now work fine where they didn't before but most others now segfaults after printing QWidget: Cannot create a QWidget without QApplication.

There's no longer any "signal not found" output and these programs still work fine without LTO.

@barolo
Copy link
Author

barolo commented Jun 11, 2021

Some good news, some bad I suppose.

After rebuilding dev-qt/{qtcore,qtwidgets} with LLVM 12.0.0_rc1 (including LLVM related packages) and affected Qt programs, I no longer segfault in every program without further output. Some programs like pinentry-qt now work fine where they didn't before but most others now segfaults after printing QWidget: Cannot create a QWidget without QApplication.

There's no longer any "signal not found" output and these programs still work fine without LTO.

I don't use clang, I've rebuilt everything recently with gcc 11, and flag override enabled, whole KDE/Plasma, QT and so with LTO. And all of that works.
Stuff that didn't work still doesn't [ like abovementioned emus ], it just seems to behave differently, segfaults upon launch instead launching with frozen gui spewing signal errors.

@barolo
Copy link
Author

barolo commented Aug 15, 2021

It seems to be affecting more and more qt apps, recently I had to disable LTO for transmission [Qt] otherwise it segfaults .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants