| Summary: | KWin fails to load necessary QT plugin when built with LTO | ||
|---|---|---|---|
| Product: | [Plasma] kwin | Reporter: | sattaxt |
| Component: | general | Assignee: | KWin default assignee <kwin-bugs-null> |
| Status: | RESOLVED UPSTREAM | ||
| Severity: | major | CC: | kde |
| Priority: | NOR | ||
| Version First Reported In: | 5.22.4 | ||
| Target Milestone: | --- | ||
| Platform: | Compiled Sources | ||
| OS: | Linux | ||
| URL: | https://bugreports.qt.io/browse/QTBUG-96738 | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
sattaxt
2021-09-19 13:34:38 UTC
Please remove KWinQpaPlugin.so in your filesystem. If the bug is still reproducible, please re-open the bug report. (In reply to Vlad Zahorodnii from comment #2) > If the bug is still reproducible, please re-open the bug report. I do not seem to have this file in my system, as "fd --glob "KWinQpaPlugin.so*" /usr /lib /home /etc /dev /boot /var /lib64" returns no results. Reopening. Okay. does plasma start if kwin is compiled without LTO? argh, nvm "if KWin is built without LTO". this seems like a bug worth reporting to Qt developers "wayland-org.kde.kwin.qpa" is a static plugin, i.e. it's compiled into kwin binary. If static plugins don't work with LTO, it's probably worth reporting to Qt developers. Alright, I'll do that. By QT developers, I'm assuming you mean upstream QT? Yeah, but it will help a lot to move the bug report progress forward if a minimal demo app is provided. Saying that kwin's qpa static plugin can't be loaded when kwin is compiled with LTO is fine, but it's more convenient to have a demo app. Can you provide some more precise information and your command to build kwin that exhibits the issue? (In reply to David Edmundson from comment #9) > Can you provide some more precise information and your command to build kwin > that exhibits the issue? I will provide my compiler flags and the command to actually build KWin below: Compiler flags ="-march=native -O3 --ld-path=/usr/bin/ld.lld -feliminate-unused-debug-types -pipe -fexceptions -w -mbranches-within-32B-boundaries -lmimalloc --param=ssp-buffer-size=32 -m64 -D_FORTIFY_SOURCE=2 -fno-semantic-interposition -flto=full -fvirtual-function-elimination -fwhole-program-vtables" Pre-build command: cmake -B build -S kwin-5.22.5 \ -DCMAKE_INSTALL_LIBEXECDIR=lib \ -DBUILD_TESTING=OFF Build command: cmake --build build Packaging command: DESTDIR="$pkgdir" cmake --install build My long list of flags may seem suspect, but it's worth stressing they're not causing the issue. To test this, I tried a build of KWin *only* with -O2 and LTO (without any of the more advanced LTO optimizations such as virtual-function-elimination), and this issue still happened. That's about the only additional information I can think of. There are no compiler errors, it builds just fine, but fails to start with the error message in the OP. If you need specific information, I can provide it. Linking the QT bug report here for reference: https://bugreports.qt.io/browse/QTBUG-96738 Thanks! |