Git master kwin/plasma/frameworks using the gentoo/kde overlay live-git ebuilds. Last successful kwin update was August 1, to 84e5d92f6, but attempting to rebuild it results in the same error as HEAD (currently ed829eb5a), and a revdep-rebuild now detects that existing kwin as missing libraries so I'm afraid to reboot or restart plasma/kwin as there's a big chance I won't be able to get back into plasma. The build error is at the end of the configure phase, and relates to a missing KF5::GlobalAccelPrivate (despite kglobalaccel being detected and presumably GlobalAccel being fine, and the last kglobalaccel commit being 5683e036e back on Jul 21, well before my successful kwin build on Aug 1, to the same kwin commit 84e5d92f6 that now fails). So the culprit doesn't seem to be in either kwin or kglobalaccel, despite the below error. What else could have caused kwin not to see GlobalAccelPrivate? I'm including the full features summary below: ... -- Found KF5GlobalAccel: /usr/lib64/cmake/KF5GlobalAccel/KF5GlobalAccelConfig.cmake (found version "5.97.0") ... -- The following features have been enabled: * KF5Activities (required version >= 5.97), Enable building of KWin with kactivities support Enable building of KWin with kactivities support * KF5DocTools (required version >= 5.97), Enable building documentation Enable building documentation * KF5Runner (required version >= 5.97), Enable building of KWin with krunner support Enable building of KWin with krunner support * Breeze-Decoration, Default decoration plugin Breeze * Wayland::EGL, Enable building of Wayland backend. * Libxcvt, Required for generating modes in the drm backend * XInput, Required for poll-free mouse cursor updates * XCB-ICCCM, Required for building test applications for KWin * SCHED_RESET_ON_FORK, Required for running kwin_wayland with real-time scheduling * Python3, Required to strip effects metadata -- The following RUNTIME packages have been found: * KF5Kirigami2 (required version >= 5.97), A QtQuick based components set Required at runtime for Virtual desktop KCM * EGL, A platform-agnostic mechanism for creating rendering surfaces for use with other graphics libraries, such as OpenGL|ES and OpenVG., <https://www.khronos.org/egl/> Required to build KWin with EGL support * Xwayland, Xwayland X server, <https://x.org> Needed for running kwin_wayland * hwdata, <https://github.com/vcrhonek/hwdata> Runtime-only dependency needed for mapping monitor hardware vendor IDs to full names * QtQuick-QMLModule, QML module 'QtQuick' is a runtime dependency. * QtQuick.Controls-QMLModule, QML module 'QtQuick.Controls' is a runtime dependency. * QtQuick.Layouts-QMLModule, QML module 'QtQuick.Layouts' is a runtime dependency. * QtQuick.Window-QMLModule, QML module 'QtQuick.Window' is a runtime dependency. * QtMultimedia-QMLModule, QML module 'QtMultimedia' is a runtime dependency. * org.kde.kquickcontrolsaddons-QMLModule, QML module 'org.kde.kquickcontrolsaddons' is a runtime dependency. * org.kde.plasma.core-QMLModule, QML module 'org.kde.plasma.core' is a runtime dependency. * org.kde.plasma.components-QMLModule, QML module 'org.kde.plasma.components' is a runtime dependency. -- The following OPTIONAL packages have been found: * KF5Attica (required version >= 5.96.0) * KF5NewStuffCore (required version >= 5.97.0) * KF5NewStuffQuick (required version >= 5.97.0) * KF5Codecs (required version >= 5.96.0) * KF5Activities (required version >= 5.97), Enable building of KWin with kactivities support Enable building of KWin with kactivities support * KF5DocTools (required version >= 5.97), Enable building documentation Enable building documentation * KF5Runner (required version >= 5.97), Enable building of KWin with krunner support Enable building of KWin with krunner support * Breeze (required version >= 5.9.0) For setting the default window decoration plugin * X11_XCB, A compatibility library for code that translates Xlib API calls into XCB calls, <https://xorg.freedesktop.org/> Required for building X11 windowed backend of kwin_wayland * PkgConfig * Python3, Required to strip effects metadata -- The following REQUIRED packages have been found: * ECM (required version >= 5.97) * Qt5Concurrent * Qt5Qml (required version >= 5.15.5) * Qt5QmlModels (required version >= 5.15.5) * Qt5UiTools * Qt5X11Extras * Qt5XkbCommonSupport * KF5Crash (required version >= 5.97) * KF5DBusAddons (required version >= 5.97) * KF5GlobalAccel (required version >= 5.97) * Gettext * KF5I18n (required version >= 5.97) * KF5IdleTime (required version >= 5.97) * Qt5Quick (required version >= 5.15.2) * KF5Declarative (required version >= 5.97) * KF5KCMUtils (required version >= 5.97) * Qt5Network (required version >= 5.15.2) * KF5NewStuff (required version >= 5.97) * KF5Auth (required version >= 5.96.0) * KF5WidgetsAddons (required version >= 5.96.0) * KF5ConfigWidgets (required version >= 5.96.0) * KF5XmlGui (required version >= 5.97) * KF5ItemViews (required version >= 5.97) * Threads Needed for VirtualTerminal support in KWin Wayland * KF5Wayland (required version >= 5.97) Required to build wayland platform plugin and tests * Qt5 (required version >= 5.15.2) * KF5Package (required version >= 5.96.0) * KF5Config (required version >= 5.96.0) * KF5CoreAddons (required version >= 5.96.0) * KF5Service (required version >= 5.96.0) * KDecoration2 (required version >= 5.25.80) * epoxy (required version >= 1.3), libepoxy, <https://github.com/anholt/libepoxy> OpenGL dispatch library * Wayland (required version >= 1.20), C library implementation of the Wayland protocol: a protocol for a compositor to talk to its clients, <https://wayland.freedesktop.org/> Required for building KWin with Wayland support * WaylandProtocols (required version >= 1.25), Specifications of extended Wayland protocols, <https://gitlab.freedesktop.org/wayland/wayland-protocols/> Collection of Wayland protocols that add functionality not available in the Wayland core protocol * PlasmaWaylandProtocols, <https://invent.kde.org/libraries/plasma-wayland-protocols/> Collection of Plasma-specific Wayland protocols * Qt5Core * QtWaylandScanner, Executable that converts XML protocol files to C++ code, <https://qt.io/> Required for building KWin with Wayland support * XKB (required version >= 0.7.0), XKB API common to servers and clients, <https://xkbcommon.org> Required for building KWin with Wayland support * Libinput (required version >= 1.19) Required for input handling on Wayland. * UDev, Linux device library., <https://www.freedesktop.org/wiki/Software/systemd/> Required for input handling on Wayland. * Libdrm (required version >= 2.4.62), Userspace interface to kernel DRM services, <https://wiki.freedesktop.org/dri/> Required for drm output on Wayland. * gbm, Mesa gbm library, <https://www.mesa3d.org> Required for egl output of drm backend. * X11, X11 libraries, <https://www.x.org> * lcms2, Small-footprint color management engine, <http://www.littlecms.com> Required for the color management system * XCB (required version >= 1.10), X protocol C-language Binding, <https://xcb.freedesktop.org/> * Qt5FontDatabaseSupport * Qt5ThemeSupport * Qt5ServiceSupport * Qt5EventDispatcherSupport * Freetype, A font rendering engine, <https://www.freetype.org> Needed for KWin's QPA plugin. * Fontconfig Needed for KWin's QPA plugin. * Qt5Gui (required version >= 5.15.2) * Qt5Widgets (required version >= 5.15.2) * Qt5DBus (required version >= 5.15.2) * KF5Notifications (required version >= 5.97) * KF5 (required version >= 5.97) * WaylandScanner, Executable that converts XML protocol files to C code, <https://wayland.freedesktop.org/> -- The following features have been disabled: * Qt5Test, Required for building tests Required for tests * PipeWire, Required for Wayland screencasting -- <<< Gentoo configuration >>> Build type RelWithDebInfo Install path /usr Compiler flags: C -march=native -O2 -fgcse-sm -fgcse-las -fgcse-after-reload -ftree-vectorize -fdiagnostics-color -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration C++ -march=native -O2 -fgcse-sm -fgcse-las -fgcse-after-reload -ftree-vectorize -fdiagnostics-color -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -fdiagnostics-color=always Linker flags: Executable -Wl,--enable-new-dtags -Wl,-z,now,-z,relro,--as-needed,-O1,--hash-style=gnu,--sort-common,--enable-new-dtags Module -Wl,--no-undefined -Wl,--enable-new-dtags -Wl,-z,now,-z,relro,--as-needed,-O1,--hash-style=gnu,--sort-common,--enable-new-dtags Shared -Wl,--no-undefined -Wl,--enable-new-dtags -Wl,-z,now,-z,relro,--as-needed,-O1,--hash-style=gnu,--sort-common,--enable-new-dtags -- Configuring done CMake Error at src/CMakeLists.txt:168 (target_link_libraries): Target "kwin" links to: KF5::GlobalAccelPrivate but the target was not found. Possible reasons include: * There is a typo in the target name. * A find_package call is missing for an IMPORTED target. * An ALIAS target is missing. CMake Error at src/plugins/kglobalaccel/CMakeLists.txt:7 (target_link_libraries): Target "KF5GlobalAccelKWinPlugin" links to: KF5::GlobalAccelPrivate but the target was not found. Possible reasons include: * There is a typo in the target name. * A find_package call is missing for an IMPORTED target. * An ALIAS target is missing. -- Generating done CMake Generate step failed. Build files cannot be regenerated correctly. * ERROR: kde-plasma/kwin-9999::kde failed (configure phase):
Hmm... System upgrade before the live-package upgrade included: cmake-3.23.3 -> cmake-3.24.0 I've not tried downgrading back to 3.23.3 yet, but that looks related and fits the not-kwin-and-not-kglobalaccel but some other dep requirements. I wonder what cmake-3.24 changed?
(In reply to Duncan from comment #1) > cmake-3.23.3 -> cmake-3.24.0 ... And 3.23.2 -> 3.23.3 was Aug 1. But downgrading to either one doesn't seem to help. =:^( I even tried rebuilding kglobalaccel after downgrading. Still no luck. Tackling another angle, attempting to reinstall the existing kwin package binary gives me this error concerning a missing library: emerge: there are no binary packages to satisfy "x86_64: libKF5GlobalAccelPrivate.so.5". (dependency required by "kde-plasma/kwin-9999::kde" [binary]) (dependency required by "kwin" [argument]) So what provided libKF5GlobalAccelPrivate.so.5 and why does it no longer provide it? I regressed the obvious kglobalaccel back to the 5.97.0 bump commit (118e262bd on July 9, well before my last successful kwin build on Aug 1), and it doesn't seem to provide it. But /something/ obviously did on Aug 1 when I last successfully built kwin.
(In reply to Duncan from comment #2) > So what provided libKF5GlobalAccelPrivate.so.5 and why does it no longer > provide it? rpmfind suggests that I was correct -- it should be kglobalaccel (on gentoo which apparently unlike rpm-based-distros combines the lib-files into their primary namesake package). So why isn't it building it? I still suspect it's a cmake-3.24.0 bug, apparently with something cached so a straight downgrade to cmake-3.23.x and retry doesn't fix it.
Found it! And I was wrong about it being a cmake bug. Turns out it was gentoo adding back the X USE flag, based on upstream kglobalaccel 7d6ef389d: Add BUILD_RUNTIME option. Since I'm wayland-only now I tried turning it off... and promptly FORGOT ABOUT IT! Big mistake, at least the forgetting! Apparently that turns off the GlobalAccelPrivate stuff that kwin still requires (for xwayland?). I gotta remember when I test new things so as to toggle them back if they don't work!