Please note closely related bugs in advance: https://bugs.gentoo.org/703574 https://bugs.gentoo.org/703586 --- I have keyworded dev-qt as follows: dev-qt/*:5 ~amd64 plasma or kde packages are NOT keyworded. Emerging kde-frameworks/kwayland (and other kde-frameworks/* packages as well) will fail as noted in [1] with errors about incomplete fields or types (which are derived from qt). The following commands did not help: emerge -1avu $(qlist -CI dev-qt/*) <- successful emerge -av1 $(qlist -IC kde-frameworks) <- fails After some chat with tdr and josef64 (thanks!) I believe that kde-frameworks 5.64 is broken by dev-qt 5.14. [1] [300/344] /usr/bin/x86_64-pc-linux-gnu-g++ -DKF5WaylandServer_EXPORTS -DKWAYLANDSERVER_DISABLE_DEPRECATED_BEFORE_AND_AT=0x0 -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_DISABLE_DEPRECATED_BEFORE=0x050d00 -DQT_GUI_LIB -DQT_NO_CAST_F$ OM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_SIGNALS_SLOTS_KEYWORDS -DQT_NO_URL_CAST_FROM_STRING -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -D_GNU_SOURCE -D_LARGEFILE64_$ OURCE -Isrc/server -I/var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server -Isrc/server/KF5WaylandServer_autogen/include -I. -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5$ mkspecs/linux-g++ -isystem /usr/include/qt5/QtConcurrent -DQT_NO_DEBUG -DNDEBUG -O2 -pipe -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virt$ al -Werror=return-type -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -fdiagnostics-color=always -pedantic -Wzero-as-null-pointer-constant -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -std=gnu++11 -MD -MT src/server/CMakeFiles/KF5WaylandServer.d$ r/xdgoutput_interface.cpp.o -MF src/server/CMakeFiles/KF5WaylandServer.dir/xdgoutput_interface.cpp.o.d -o src/server/CMakeFiles/KF5WaylandServer.dir/xdgoutput_interface.cpp.o -c /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/xdgoutp$ t_interface.cpp FAILED: src/server/CMakeFiles/KF5WaylandServer.dir/xdgoutput_interface.cpp.o /usr/bin/x86_64-pc-linux-gnu-g++ -DKF5WaylandServer_EXPORTS -DKWAYLANDSERVER_DISABLE_DEPRECATED_BEFORE_AND_AT=0x0 -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_DISABLE_DEPRECATED_BEFORE=0x050d00 -DQT_GUI_LIB -DQT_NO_CAST_FROM_ASCII $ DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_SIGNALS_SLOTS_KEYWORDS -DQT_NO_URL_CAST_FROM_STRING -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -Is$ c/server -I/var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server -Isrc/server/KF5WaylandServer_autogen/include -I. -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/l$ nux-g++ -isystem /usr/include/qt5/QtConcurrent -DQT_NO_DEBUG -DNDEBUG -O2 -pipe -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werro$ =return-type -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -fdiagnostics-color=always -pedantic -Wzero-as-null-pointer-constant -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -std=gnu++11 -MD -MT src/server/CMakeFiles/KF5WaylandServer.dir/xdgoutp$ t_interface.cpp.o -MF src/server/CMakeFiles/KF5WaylandServer.dir/xdgoutput_interface.cpp.o.d -o src/server/CMakeFiles/KF5WaylandServer.dir/xdgoutput_interface.cpp.o -c /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/xdgoutput_interfa$ e.cpp /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/xdgoutput_interface.cpp:37:50: error: field ‘outputs’ has incomplete type ‘QHash<KWayland::Server::OutputInterface*, KWayland::Server::XdgOutputInterface*>’ 37 | QHash<OutputInterface*, XdgOutputInterface*> outputs; | ^~~~~~~ In file included from /usr/include/qt5/QtCore/qglobal.h:1290, from /usr/include/qt5/QtCore/qnamespace.h:43, from /usr/include/qt5/QtCore/qobjectdefs.h:48, from /usr/include/qt5/QtCore/qobject.h:46, from /usr/include/qt5/QtCore/QObject:1, from /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/global.h:23, from /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/xdgoutput_interface.h:23, from /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/xdgoutput_interface.cpp:20: /usr/include/qt5/QtCore/qtypeinfo.h:242:1: note: declaration of ‘class QHash<KWayland::Server::OutputInterface*, KWayland::Server::XdgOutputInterface*>’ 242 | Q_DECLARE_MOVABLE_CONTAINER(QHash); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/xdgoutput_interface.cpp: In lambda function: /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/xdgoutput_interface.cpp:150:9: error: ‘xdgOutput’ is not captured 150 | xdgOutput->d->resourceDisconnected(iface); | ^~~~~~~~~ /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/xdgoutput_interface.cpp:149:80: note: the lambda has no capture-default 149 | connect(iface, &XdgOutputV1Interface::unbound, xdgOutput, [xdgOutput, iface]() { | ^ /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server/xdgoutput_interface.cpp:147:10: note: ‘<typeprefixerror>xdgOutput’ declared here 147 | auto xdgOutput = d->outputs[output]; | ^~~~~~~~~ [301/344] /usr/bin/x86_64-pc-linux-gnu-g++ -DKF5WaylandServer_EXPORTS -DKWAYLANDSERVER_DISABLE_DEPRECATED_BEFORE_AND_AT=0x0 -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS_SINCE=0x060000 -DQT_DISABLE_DEPRECATED_BEFORE=0x050d00 -DQT_GUI_LIB -DQT_NO_CAST_F$ OM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_SIGNALS_SLOTS_KEYWORDS -DQT_NO_URL_CAST_FROM_STRING -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -D_GNU_SOURCE -D_LARGEFILE64_$ OURCE -Isrc/server -I/var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/server -Isrc/server/KF5WaylandServer_autogen/include -I. -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5$ mkspecs/linux-g++ -isystem /usr/include/qt5/QtConcurrent -DQT_NO_DEBUG -DNDEBUG -O2 -pipe -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virt$ al -Werror=return-type -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -fdiagnostics-color=always -pedantic -Wzero-as-null-pointer-constant -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -std=gnu++11 -MD -MT src/server/CMakeFiles/KF5WaylandServer.d$ r/xdgforeign_v2_interface.cpp.o -MF src/server/CMakeFiles/KF5WaylandServer.dir/xdgforeign_v2_interface.cpp.o.d -o src/server/CMakeFiles/KF5WaylandServer.dir/xdgforeign_v2_interface.cpp.o -c /var/tmp/portage/kde-frameworks/kwayland-5.64.0/work/kwayland-5.64.0/src/se$ ver/xdgforeign_v2_interface.cpp
Problem is caused by mixing stable (KF 5.64) and unstable (Qt 5.14) packages. This is not recommended. It makes much more sense to upgrade to Frameworks 5.65.0.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2cc3c6f1a63ffbf57e2e99974c379c012d0cb4b5 commit 2cc3c6f1a63ffbf57e2e99974c379c012d0cb4b5 Author: Andreas Sturmlechner <asturm@gentoo.org> AuthorDate: 2019-12-25 01:19:59 +0000 Commit: Andreas Sturmlechner <asturm@gentoo.org> CommitDate: 2019-12-25 01:27:27 +0000 kde-frameworks/kwayland: Fix 5.64.0 build with Qt 5.14.0 Upstream commit c4a49fbf2d5dd63659ed0c679ce180eda89a6d0d Reported-by: m.manico@gmx.at Closes: https://bugs.gentoo.org/703696 Package-Manager: Portage-2.3.83, Repoman-2.3.20 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> .../kwayland/files/kwayland-5.64.0-qt-5.14.0.patch | 24 ++++++++++++++++++++++ kde-frameworks/kwayland/kwayland-5.64.0.ebuild | 2 ++ 2 files changed, 26 insertions(+)
If you insist on combining stable and unstable then feel free to submit PRs for further failing packages you may encounter using the commit in comment 1 as a template. Otherwise, backporting patch after patch for issues that are known to be fixed in readily available ~arch versions is pointless.