On a system/builder with Kubuntu backports for 22.10, trying to build flatpack-kcm 5.27.3 from git or the released tarball, the build fails with the error at the end of this report. Also see: https://launchpad.net/~rikmills/+archive/ubuntu/flatpack-kcm-ftbfs/+build/25672330 SOFTWARE/OS VERSIONS Linux: K/Ubuntu 22.10 KDE Plasma Version: 5.27.3 KDE Frameworks Version: 5.104.0 Qt Version: 5.15.6 GCC: 12.2.0 However, when building on K/Ubuntu 23.04 development version with Qt 5.15.8 and GCC 12.2.0, the build succeeds without problem. https://launchpad.net/ubuntu/+source/flatpak-kcm/5.27.3-0ubuntu1/+build/25669977 Doing a git bisect between 5.27.2 (builds ok) and 5.27.3, results in the 1st bad commit being shown to be: https://invent.kde.org/plasma/flatpak-kcm/-/commit/7f441bf154e8e084d21c06e1ae2da829ddb518bc **** failure build log extract **** [ 41%] Building CXX object CMakeFiles/kcm_flatpak_static.dir/flatpakreference.cpp.o /usr/bin/c++ -DKCOREADDONS_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_KEYWORDS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_URL_CAST_FROM_STRING -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_QUICK_LIB -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -DTRANSLATION_DOMAIN=\"kcm_flatpak\" -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/kcm_flatpak_static_autogen/include -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -isystem /usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -isystem /usr/include/KF5/KCoreAddons -isystem /usr/include/KF5 -isystem /usr/include/KF5/KConfig -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5/KI18n -isystem /usr/include/KF5/KDeclarative -isystem /usr/include/x86_64-linux-gnu/qt5/QtQuick -isystem /usr/include/x86_64-linux-gnu/qt5/QtQmlModels -isystem /usr/include/x86_64-linux-gnu/qt5/QtQml -isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/flatpak -isystem /usr/include/ostree-1 -isystem /usr/include/gio-unix-2.0 -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/x86_64-linux-gnu/qt5/QtDBus -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Werror=undef -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -pthread -std=c++17 -MD -MT CMakeFiles/kcm_flatpak_static.dir/flatpakhelper.cpp.o -MF CMakeFiles/kcm_flatpak_static.dir/flatpakhelper.cpp.o.d -o CMakeFiles/kcm_flatpak_static.dir/flatpakhelper.cpp.o -c /<<PKGBUILDDIR>>/flatpakhelper.cpp /usr/bin/c++ -DKCOREADDONS_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_KEYWORDS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_URL_CAST_FROM_STRING -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_QUICK_LIB -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -DTRANSLATION_DOMAIN=\"kcm_flatpak\" -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/kcm_flatpak_static_autogen/include -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -isystem /usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -isystem /usr/include/KF5/KCoreAddons -isystem /usr/include/KF5 -isystem /usr/include/KF5/KConfig -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5/KI18n -isystem /usr/include/KF5/KDeclarative -isystem /usr/include/x86_64-linux-gnu/qt5/QtQuick -isystem /usr/include/x86_64-linux-gnu/qt5/QtQmlModels -isystem /usr/include/x86_64-linux-gnu/qt5/QtQml -isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/flatpak -isystem /usr/include/ostree-1 -isystem /usr/include/gio-unix-2.0 -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/x86_64-linux-gnu/qt5/QtDBus -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Werror=undef -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -pthread -std=c++17 -MD -MT CMakeFiles/kcm_flatpak_static.dir/flatpakreference.cpp.o -MF CMakeFiles/kcm_flatpak_static.dir/flatpakreference.cpp.o.d -o CMakeFiles/kcm_flatpak_static.dir/flatpakreference.cpp.o -c /<<PKGBUILDDIR>>/flatpakreference.cpp In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:48, from /usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:45, from /usr/include/x86_64-linux-gnu/qt5/QtCore/qabstractitemmodel.h:43, from /usr/include/x86_64-linux-gnu/qt5/QtCore/QAbstractListModel:1, from /<<PKGBUILDDIR>>/flatpakreference.h:10, from /<<PKGBUILDDIR>>/flatpakpermission.h:8, from /<<PKGBUILDDIR>>/flatpakpermission.cpp:7: /usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h: In instantiation of ‘QVector<T>::iterator QVector<T>::insert(iterator, size_type, const T&) [with T = FlatpakPermission; iterator = QTypedArrayData<FlatpakPermission>::iterator; size_type = int]’: /usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:462:9: required from ‘void QVector<T>::insert(int, const T&) [with T = FlatpakPermission]’ /<<PKGBUILDDIR>>/flatpakpermission.cpp:600:29: required from here /usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:841:17: error: no matching function for call to ‘FlatpakPermission::FlatpakPermission()’ 841 | new (--i) T; | ^~~~~~~~~~~ /<<PKGBUILDDIR>>/flatpakpermission.cpp:26:1: note: candidate: ‘FlatpakPermission::FlatpakPermission(const QString&, const QString&, const QString&, ValueType, bool, const QString&, const QStringList&)’ 26 | FlatpakPermission::FlatpakPermission(const QString &name, | ^~~~~~~~~~~~~~~~~ /<<PKGBUILDDIR>>/flatpakpermission.cpp:26:1: note: candidate expects 7 arguments, 0 provided /<<PKGBUILDDIR>>/flatpakpermission.cpp:19:1: note: candidate: ‘FlatpakPermission::FlatpakPermission(const QString&)’ 19 | FlatpakPermission::FlatpakPermission(const QString &category) | ^~~~~~~~~~~~~~~~~ /<<PKGBUILDDIR>>/flatpakpermission.cpp:19:1: note: candidate expects 1 argument, 0 provided /<<PKGBUILDDIR>>/flatpakpermission.h:24:7: note: candidate: ‘FlatpakPermission::FlatpakPermission(const FlatpakPermission&)’ 24 | class FlatpakPermission | ^~~~~~~~~~~~~~~~~ /<<PKGBUILDDIR>>/flatpakpermission.h:24:7: note: candidate expects 1 argument, 0 provided /<<PKGBUILDDIR>>/flatpakpermission.h:24:7: note: candidate: ‘FlatpakPermission::FlatpakPermission(FlatpakPermission&&)’ /<<PKGBUILDDIR>>/flatpakpermission.h:24:7: note: candidate expects 1 argument, 0 provided
Rik, can you please try applying this patch to check if it fixes the build? https://invent.kde.org/plasma/flatpak-kcm/-/merge_requests/62
(In reply to ratijas from comment #1) > Rik, can you please try applying this patch to check if it fixes the build? > > https://invent.kde.org/plasma/flatpak-kcm/-/merge_requests/62 I can confirm that the patch fixes the build. Thank you!
Git commit 7e644d8f39e38f5713938424fef6064261270023 by ivan tkachenko. Committed on 15/03/2023 at 19:57. Pushed by ratijas into branch 'master'. FlatpakPermission: Add back no-args default constructor Older toolchain such as Kubuntu requires default constructor to use this class with QVector. Do not use this constructor manually. M +4 -0 flatpakpermission.h https://invent.kde.org/plasma/flatpak-kcm/commit/7e644d8f39e38f5713938424fef6064261270023
Git commit 331105fa44a0b03c7f7f5a543b92aab3ec659385 by ivan tkachenko. Committed on 15/03/2023 at 19:58. Pushed by ratijas into branch 'Plasma/5.27'. FlatpakPermission: Add back no-args default constructor Older toolchain such as Kubuntu requires default constructor to use this class with QVector. Do not use this constructor manually. (cherry picked from commit 7e644d8f39e38f5713938424fef6064261270023) M +4 -0 flatpakpermission.h https://invent.kde.org/plasma/flatpak-kcm/commit/331105fa44a0b03c7f7f5a543b92aab3ec659385
OK, Rik, gotta keep that in mind. Thank you too, and sorry for the breakage.