Summary: | kde-frameworks/*, dev-libs/libqtxdg with Qt 5.14: _populate_Gui_plugin_properties Macro invoked with incorrect arguments for macro named: _populate_Gui_plugin_properties | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | klaus818 |
Component: | New packages | Assignee: | Qt Bug Alias <qt> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | asturm, defuebr, dschridde+gentoobugs, grozin, jlp.bugs, kde, mackal.cook, mark+gentoobugs, orzel, sokann, toralf, weiping_xu |
Priority: | Normal | Keywords: | UPSTREAM |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | https://code.qt.io/cgit/qt/qtbase.git/commit/?h=5.14&id=63d9cd17 | ||
See Also: |
https://github.com/gentoo/gentoo/pull/14045 https://bugs.gentoo.org/show_bug.cgi?id=705198 https://github.com/gentoo/gentoo/pull/14608 https://invent.kde.org/qt/qt/qtbase/-/merge_requests/112 |
||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 699328 | ||
Attachments: | build.log |
Description
klaus818
2019-12-18 16:05:26 UTC
CMake Error at /usr/lib64/cmake/Qt5Gui/Qt5Gui_QVirtualKeyboardPlugin.cmake:4 (_populate_Gui_plugin_properties): _populate_Gui_plugin_properties Macro invoked with incorrect arguments for macro named: _populate_Gui_plugin_properties Call Stack (most recent call first): /usr/lib64/cmake/Qt5Gui/Qt5GuiConfig.cmake:213 (include) /usr/lib64/cmake/Qt5/Qt5Config.cmake:28 (find_package) CMakeLists.txt:48 (find_package) ^ are you sure your Qt installation is consistent? No, there is an update running to qt 5.14. And in this update I had this update of kcalendarcore. After the update of qt to 5.14 was complete, I was able to build kcalendarcore-5.65.0-r1. *** Bug 703312 has been marked as a duplicate of this bug. *** It seems a Qt cmake macro changed its arguments in a backwards incompatible way, sometimes this will result in an error esp. with parallelised jobs. Here are the results of `equery b /usr/lib64/cmake/Qt5Gui/*Plugin.cmake` on my system: dev-qt/qtgui-5.14.0 (obviously) dev-qt/qtimageformats-5.14.0 dev-qt/qtsvg-5.14.0 dev-qt/qtvirtualkeyboard-5.14.0 dev-qt/qtwayland-5.14.0 Should we add blockers to these packages against <dev-qt/qtgui-5.14.0 to help Portage get it ordered correctly? Or maybe in addition, as dev-qt/qtgui will come first in the depgraph, add blockers against the older versions of said packages. (In reply to Andreas Sturmlechner from comment #6) > Or maybe in addition, as dev-qt/qtgui will come first in the depgraph, add > blockers against the older versions of said packages. Could this be fixed with some subslot stuff? Looking at the package I had issues with, the package only cares about the slot, so I guess it's possible for the direct dependencies being fulfilled with differing subslots from qtcore package (they should all be same subslot to build correctly with this backwards incompatible change to Qt's CMake stuff) Since all revdeps already depend on qtgui-${PV} anyway, the only place to put blockers indeed is qtgui. (In reply to Michael Cook from comment #7) > Could this be fixed with some subslot stuff? That might fix it as well, but 1) this is a one-time issue with >=Qt-5.14 upgrade 2) that would extend the way Qt subslots are used 3) slot ops are costly I got bit by this bug. But I did find a workaround. emerge -1av $(qlist -CI dev-qt/*) After doing the above, world update should work. On my system, this bug was blocking an update of 224 packages. Similarly to c9 I hit this as well, and it failed enough that portage eventually gave up entirely, even with --keep-going. I tried updating/rebuilding dev-qt/qtgui explicitly with no effect. Ultimately I used `eix -\#ICu dev-qt | xargs emerge -1a` to rebuild any Qt packages needing update, which subsequently allowed a world update to complete. *** Bug 703456 has been marked as a duplicate of this bug. *** The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fdaf78687b564b5ce82dc11187181de85d601cec commit fdaf78687b564b5ce82dc11187181de85d601cec Author: Andreas Sturmlechner <asturm@gentoo.org> AuthorDate: 2019-12-18 21:19:49 +0000 Commit: Andreas Sturmlechner <asturm@gentoo.org> CommitDate: 2019-12-21 09:08:10 +0000 dev-qt/qtgui: Block known old users of _populate_Gui_plugin_properties With sufficiently parallelised emerge, if dev-qt/qtgui reverse dependencies are scheduled before modules installing Qt5Gui plugins have been rebuilt, these revdeps will fail cmake after an incompatible change in macro args. Bug: https://bugs.gentoo.org/703306 Package-Manager: Portage-2.3.82, Repoman-2.3.20 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> dev-qt/qtgui/qtgui-5.14.0.ebuild | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) *** Bug 703406 has been marked as a duplicate of this bug. *** (In reply to Larry the Git Cow from comment #12) > With sufficiently parallelised emerge I don't think this has anything to do with parallel emerge, since I don't use --jobs at all (meaning I end up using --jobs 1). (In reply to Nikos Chantziaras from comment #14) > I don't think this has anything to do with parallel emerge, since I don't > use --jobs at all (meaning I end up using --jobs 1). That's no contradiction, you can have bad luck with --jobs 1 but chances are higher the more parallised you run emerge. Still getting failures even with the blockers in place. (In reply to Michael Cook from comment #16) > Still getting failures even with the blockers in place. Basically, kde-frameworks/kwidgetsaddons is being rebuilt before dev-qt/qtimageformats-5.14.0 is. We can escalate the blockers to !! but then everyone will have to manually unmerge these packages before Qt upgrade is possible... I'm probably wrong here due to ignorance, but isn't this what build-time deps are used for? If kwidgetsaddons needs an updated cmake file, then whatever package owns that cmake file should be in the build-time deps of kwidgetsaddons? No. *** Bug 703568 has been marked as a duplicate of this bug. *** I meet this issue too and I workaround it by rebuiding all QT modules. ```shell emerge -av1 $(qlist -IvC /qt | grep 5 | sed s/-5.\*//) ``` then continue your kde build. For anyone who comes across this bug looking for answers, this command finally unwedged Qt for me. emerge -av1 $(qlist -IC dev-qt) --ignore-built-slot-operator-deps=y After that, update @world as normal. Other suggestions in this thread did not work for me. Thanks to josef64 on #gentoo for this tip. The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/qt.git/commit/?id=71a6ccc1bcc9b66bbb891365ab17edcd49f7b1c9 commit 71a6ccc1bcc9b66bbb891365ab17edcd49f7b1c9 Author: Andreas Sturmlechner <asturm@gentoo.org> AuthorDate: 2019-12-25 15:51:30 +0000 Commit: Andreas Sturmlechner <asturm@gentoo.org> CommitDate: 2019-12-25 17:30:33 +0000 dev-qt/qtgui: Sync with Gentoo ebuild repository - Fix build with CXXFLAGS="-march=native" - Block known old users of _populate_Gui_plugin_properties With sufficiently parallelised emerge, if dev-qt/qtgui reverse dependencies are scheduled before modules installing Qt5Gui plugins have been rebuilt, these revdeps will fail cmake after an incompatible change in macro args. - Raise minimum dependency for USE=tslib Bug: https://bugs.gentoo.org/672946 Bug: https://bugs.gentoo.org/703306 Bug: https://bugs.gentoo.org/703336 Package-Manager: Portage-2.3.83, Repoman-2.3.20 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> dev-qt/qtgui/files/qt-5.12-gcc-avx2.patch | 29 +++++++++++++++++++++++++++++ dev-qt/qtgui/qtgui-5.12.9999.ebuild | 2 ++ dev-qt/qtgui/qtgui-5.14.9999.ebuild | 15 ++++++++++++--- dev-qt/qtgui/qtgui-5.15.9999.ebuild | 15 ++++++++++++--- dev-qt/qtgui/qtgui-5.9999.ebuild | 2 +- 5 files changed, 56 insertions(+), 7 deletions(-) May as well reopen it as it is clear the soft blockers are not enough to help with package build order. kde-frameworks/kguiaddons-5.64.0 failed today with an uptodate tree, it blocks further updating of dev-qt/*. As a result qt is broken (some packages are updated, most aren't and wont), and kde can't be updated neither. Yes, you're re-iterating what we already know. Know try to solve it with the solutions also presented in this bug. Hello, this also made lxqt not able to start - as said, the solution presented in this ticked fixed it for me as well,lxqt can start after rebuilding Qt. Currently testing a patch that adds a fallback function call to qtcore's cmake. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9f10d5690b0a924021f54c7b09b4ce152fd37e0b commit 9f10d5690b0a924021f54c7b09b4ce152fd37e0b Author: Andreas Sturmlechner <asturm@gentoo.org> AuthorDate: 2020-02-09 16:23:29 +0000 Commit: Andreas Sturmlechner <asturm@gentoo.org> CommitDate: 2020-02-09 18:51:03 +0000 dev-qt/qtgui: Fix cmake macro compat. for upgrade from <Qt-5.14 Closes: https://bugs.gentoo.org/703306 Package-Manager: Portage-2.3.87, Repoman-2.3.20 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> .../qtgui-5.14.1-cmake-macro-backward-compat.patch | 50 ++++++ dev-qt/qtgui/qtgui-5.14.1-r2.ebuild | 188 +++++++++++++++++++++ 2 files changed, 238 insertions(+) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fe1eb44a73d1a8e99aae1eeb2b7504b326df2cd1 commit fe1eb44a73d1a8e99aae1eeb2b7504b326df2cd1 Author: Andreas Sturmlechner <asturm@gentoo.org> AuthorDate: 2020-02-09 10:59:22 +0000 Commit: Andreas Sturmlechner <asturm@gentoo.org> CommitDate: 2020-02-09 18:51:02 +0000 dev-qt/qtcore: Fix cmake macro compat. for upgrade from <Qt-5.14 Closes: https://bugs.gentoo.org/703306 Closes: https://bugs.gentoo.org/705198 Package-Manager: Portage-2.3.87, Repoman-2.3.20 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> ...qtcore-5.14.1-cmake-macro-backward-compat.patch | 50 +++++++++++++ dev-qt/qtcore/qtcore-5.14.1-r1.ebuild | 85 ++++++++++++++++++++++ 2 files changed, 135 insertions(+) The bug has been closed via the following commit(s): https://gitweb.gentoo.org/proj/qt.git/commit/?id=bb3e4735560877bc5e06bb6f5cc36ce3869c7249 commit bb3e4735560877bc5e06bb6f5cc36ce3869c7249 Author: Andreas Sturmlechner <asturm@gentoo.org> AuthorDate: 2020-02-09 16:23:29 +0000 Commit: Andreas Sturmlechner <asturm@gentoo.org> CommitDate: 2020-02-09 19:22:20 +0000 dev-qt/qtgui: Fix cmake macro compat. for upgrade from <Qt-5.14 Closes: https://bugs.gentoo.org/703306 Package-Manager: Portage-2.3.87, Repoman-2.3.20 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> (cherry picked from commit 9f10d5690b0a924021f54c7b09b4ce152fd37e0b) .../qtgui-5.14.1-cmake-macro-backward-compat.patch | 50 ++++++++++++++++++++++ dev-qt/qtgui/qtgui-5.14.9999.ebuild | 5 ++- dev-qt/qtgui/qtgui-5.15.9999.ebuild | 5 ++- 3 files changed, 58 insertions(+), 2 deletions(-) https://gitweb.gentoo.org/proj/qt.git/commit/?id=91b38cc3ab9bb6c70c9e40ba6a5fbbe41b2da753 commit 91b38cc3ab9bb6c70c9e40ba6a5fbbe41b2da753 Author: Andreas Sturmlechner <asturm@gentoo.org> AuthorDate: 2020-02-09 10:59:22 +0000 Commit: Andreas Sturmlechner <asturm@gentoo.org> CommitDate: 2020-02-09 19:22:20 +0000 dev-qt/qtcore: Fix cmake macro compat. for upgrade from <Qt-5.14 Closes: https://bugs.gentoo.org/703306 Closes: https://bugs.gentoo.org/705198 Package-Manager: Portage-2.3.87, Repoman-2.3.20 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org> (cherry picked from commit fe1eb44a73d1a8e99aae1eeb2b7504b326df2cd1) ...qtcore-5.14.1-cmake-macro-backward-compat.patch | 50 ++++++++++++++++++++++ dev-qt/qtcore/qtcore-5.14.9999.ebuild | 4 +- dev-qt/qtcore/qtcore-5.15.9999.ebuild | 4 +- 3 files changed, 56 insertions(+), 2 deletions(-) |