Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't compile on Nobara 38 (Fedora based) and Plasma 5.27.6 #203

Closed
Lenni-builder opened this issue Jul 26, 2023 · 2 comments
Closed

Can't compile on Nobara 38 (Fedora based) and Plasma 5.27.6 #203

Lenni-builder opened this issue Jul 26, 2023 · 2 comments

Comments

@Lenni-builder
Copy link

Lenni-builder commented Jul 26, 2023

Compiling the applet on Plasma 5.27.6 on Nobara 38 fails. I installed all dependencies (according to INSTALLATION.md) and ran the script using sh install.sh. Here is its output:

[lenni@nobara-ideapad applet-window-buttons]$ sh install.sh 
CMake Warning (dev) at CMakeLists.txt:1 (project):
  cmake_minimum_required() should be called prior to this top-level project()
  call.  Please see the cmake-commands(7) manual for usage documentation of
  both commands.
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at /usr/share/ECM/modules/ECMFindModuleHelpers.cmake:113 (message):
  Your project should require at least CMake 3.16.0 to use FindKF5.cmake
Call Stack (most recent call first):
  /usr/share/ECM/find-modules/FindKF5.cmake:30 (ecm_find_package_version_check)
  CMakeLists.txt:19 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found KF5: success (found suitable version "5.107.0", minimum required is "5.81.0") found components: CoreAddons Declarative Plasma PlasmaQuick 
-- KDECORATION2 VERSION MINOR : 27
-- Could not set up the appstream test. appstreamcli is missing.
CMake Warning (dev) at /usr/share/ECM/modules/ECMFindModuleHelpers.cmake:113 (message):
  Your project should require at least CMake 3.16.0 to use FindKF5.cmake
Call Stack (most recent call first):
  /usr/share/ECM/find-modules/FindKF5.cmake:30 (ecm_find_package_version_check)
  libappletdecoration/CMakeLists.txt:37 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found KF5: success (found suitable version "5.107.0", minimum required is "5.26.0") found components: Plasma WindowSystem I18n Service ConfigWidgets 
-- Configuring done (0.4s)
-- Generating done (0.0s)
-- Build files have been written to: /home/lenni/Desktop/applet-window-buttons/build
[ 13%] Automatic MOC for target appletdecorationplugin
[ 13%] Built target appletdecorationplugin_autogen
[ 13%] Building CXX object libappletdecoration/CMakeFiles/appletdecorationplugin.dir/previewbridge.cpp.o
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp: In member function ‘virtual std::unique_ptr<KDecoration2::DecoratedClientPrivate> Decoration::Applet::PreviewBridge::createClient(KDecoration2::DecoratedClient*, KDecoration2::Decoration*)’:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:75:83: error: invalid new-expression of abstract class type ‘Decoration::Applet::PreviewClient’
   75 |     auto ptr = std::unique_ptr<PreviewClient>(new PreviewClient(client, decoration));
      |                                                                                   ^
In file included from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:27:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewclient.h:40:7: note:   because the following virtual functions are pure within ‘Decoration::Applet::PreviewClient’:
   40 | class PreviewClient : public QObject, public KDecoration2::ApplicationMenuEnabledDecoratedClientPrivate
      |       ^~~~~~~~~~~~~
In file included from /usr/include/KDecoration2/KDecoration2/Private/DecoratedClientPrivate:1,
                 from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewclient.h:31:
/usr/include/KDecoration2/kdecoration2/private/decoratedclientprivate.h:80:21: note:     ‘virtual QString KDecoration2::DecoratedClientPrivate::windowClass() const’
   80 |     virtual QString windowClass() const = 0;
      |                     ^~~~~~~~~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp: In member function ‘virtual std::unique_ptr<KDecoration2::DecorationSettingsPrivate> Decoration::Applet::PreviewBridge::settings(KDecoration2::DecorationSettings*)’:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:84:21: warning: redundant move in return statement [-Wredundant-move]
   84 |     return std::move(ptr);
      |            ~~~~~~~~~^~~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:84:21: note: remove ‘std::move’ call
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp: In member function ‘void Decoration::Applet::PreviewBridge::createFactory()’:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:138:44: warning: ‘static KPluginTrader* KPluginTrader::self()’ is deprecated: Since 5.82. Use KPluginMetaData and KPluginFactory [-Wdeprecated-declarations]
  138 |     const auto offers = KPluginTrader::self()->query(s_pluginName,
      |                         ~~~~~~~~~~~~~~~~~~~^~
In file included from /usr/include/KF5/KService/KPluginTrader:1,
                 from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:37:
/usr/include/KF5/KService/kplugintrader.h:163:27: note: declared here
  163 |     static KPluginTrader *self();
      |                           ^~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:138:53: warning: ‘KPluginInfo::List KPluginTrader::query(const QString&, const QString&, const QString&)’ is deprecated: Since 5.82. Use KPluginMetaData::findPlugins [-Wdeprecated-declarations]
  138 |     const auto offers = KPluginTrader::self()->query(s_pluginName,
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
  139 |                         s_pluginName,
      |                         ~~~~~~~~~~~~~                
  140 |                         QStringLiteral("[X-KDE-PluginInfo-Name] == '%1'").arg(m_plugin));
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/KF5/KService/kplugintrader.h:150:23: note: declared here
  150 |     KPluginInfo::List query(const QString &subDirectory, const QString &serviceType = QString(), const QString &constraint = QString());
      |                       ^~~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:149:31: warning: ‘KPluginFactory* KPluginLoader::factory()’ is deprecated: Since 5.86. Use KPluginFactory::loadFactory or KPluginFactory::instantiatePlugin instead [-Wdeprecated-declarations]
  149 |     m_factory = loader.factory();
      |                 ~~~~~~~~~~~~~~^~
In file included from /usr/include/KF5/KCoreAddons/KPluginLoader:1,
                 from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:35:
/usr/include/KF5/KCoreAddons/kpluginloader.h:126:21: note: declared here
  126 |     KPluginFactory *factory();
      |                     ^~~~~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp: In member function ‘KDecoration2::DecorationButton* Decoration::Applet::PreviewBridge::createButton(KDecoration2::Decoration*, KDecoration2::DecorationButtonType, QObject*)’:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:195:67: warning: ‘T* KPluginFactory::create(const QString&, QObject*, const QVariantList&) [with T = KDecoration2::DecorationButton; QVariantList = QList<QVariant>]’ is deprecated: Since 5.89. Use overload without keyword instead [-Wdeprecated-declarations]
  195 |         button = m_factory->create<KDecoration2::DecorationButton>(QStringLiteral("button"), parent, QVariantList({QVariant::fromValue(type), QVariant::fromValue(decoration)}));
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/KF5/KCoreAddons/KPluginFactory:1,
                 from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:36:
/usr/include/KF5/KCoreAddons/kpluginfactory.h:950:11: note: declared here
  950 | inline T *KPluginFactory::create(const QString &keyword, QObject *parent, const QVariantList &args)
      |           ^~~~~~~~~~~~~~
make[2]: *** [libappletdecoration/CMakeFiles/appletdecorationplugin.dir/build.make:216: libappletdecoration/CMakeFiles/appletdecorationplugin.dir/previewbridge.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:153: libappletdecoration/CMakeFiles/appletdecorationplugin.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
[  4%] Automatic MOC for target appletdecorationplugin
[  4%] Built target appletdecorationplugin_autogen
[  9%] Building CXX object libappletdecoration/CMakeFiles/appletdecorationplugin.dir/previewbridge.cpp.o
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp: In member function ‘virtual std::unique_ptr<KDecoration2::DecoratedClientPrivate> Decoration::Applet::PreviewBridge::createClient(KDecoration2::DecoratedClient*, KDecoration2::Decoration*)’:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:75:83: error: invalid new-expression of abstract class type ‘Decoration::Applet::PreviewClient’
   75 |     auto ptr = std::unique_ptr<PreviewClient>(new PreviewClient(client, decoration));
      |                                                                                   ^
In file included from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:27:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewclient.h:40:7: note:   because the following virtual functions are pure within ‘Decoration::Applet::PreviewClient’:
   40 | class PreviewClient : public QObject, public KDecoration2::ApplicationMenuEnabledDecoratedClientPrivate
      |       ^~~~~~~~~~~~~
In file included from /usr/include/KDecoration2/KDecoration2/Private/DecoratedClientPrivate:1,
                 from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewclient.h:31:
/usr/include/KDecoration2/kdecoration2/private/decoratedclientprivate.h:80:21: note:     ‘virtual QString KDecoration2::DecoratedClientPrivate::windowClass() const’
   80 |     virtual QString windowClass() const = 0;
      |                     ^~~~~~~~~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp: In member function ‘virtual std::unique_ptr<KDecoration2::DecorationSettingsPrivate> Decoration::Applet::PreviewBridge::settings(KDecoration2::DecorationSettings*)’:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:84:21: warning: redundant move in return statement [-Wredundant-move]
   84 |     return std::move(ptr);
      |            ~~~~~~~~~^~~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:84:21: note: remove ‘std::move’ call
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp: In member function ‘void Decoration::Applet::PreviewBridge::createFactory()’:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:138:44: warning: ‘static KPluginTrader* KPluginTrader::self()’ is deprecated: Since 5.82. Use KPluginMetaData and KPluginFactory [-Wdeprecated-declarations]
  138 |     const auto offers = KPluginTrader::self()->query(s_pluginName,
      |                         ~~~~~~~~~~~~~~~~~~~^~
In file included from /usr/include/KF5/KService/KPluginTrader:1,
                 from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:37:
/usr/include/KF5/KService/kplugintrader.h:163:27: note: declared here
  163 |     static KPluginTrader *self();
      |                           ^~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:138:53: warning: ‘KPluginInfo::List KPluginTrader::query(const QString&, const QString&, const QString&)’ is deprecated: Since 5.82. Use KPluginMetaData::findPlugins [-Wdeprecated-declarations]
  138 |     const auto offers = KPluginTrader::self()->query(s_pluginName,
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
  139 |                         s_pluginName,
      |                         ~~~~~~~~~~~~~                
  140 |                         QStringLiteral("[X-KDE-PluginInfo-Name] == '%1'").arg(m_plugin));
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/KF5/KService/kplugintrader.h:150:23: note: declared here
  150 |     KPluginInfo::List query(const QString &subDirectory, const QString &serviceType = QString(), const QString &constraint = QString());
      |                       ^~~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:149:31: warning: ‘KPluginFactory* KPluginLoader::factory()’ is deprecated: Since 5.86. Use KPluginFactory::loadFactory or KPluginFactory::instantiatePlugin instead [-Wdeprecated-declarations]
  149 |     m_factory = loader.factory();
      |                 ~~~~~~~~~~~~~~^~
In file included from /usr/include/KF5/KCoreAddons/KPluginLoader:1,
                 from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:35:
/usr/include/KF5/KCoreAddons/kpluginloader.h:126:21: note: declared here
  126 |     KPluginFactory *factory();
      |                     ^~~~~~~
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp: In member function ‘KDecoration2::DecorationButton* Decoration::Applet::PreviewBridge::createButton(KDecoration2::Decoration*, KDecoration2::DecorationButtonType, QObject*)’:
/home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:195:67: warning: ‘T* KPluginFactory::create(const QString&, QObject*, const QVariantList&) [with T = KDecoration2::DecorationButton; QVariantList = QList<QVariant>]’ is deprecated: Since 5.89. Use overload without keyword instead [-Wdeprecated-declarations]
  195 |         button = m_factory->create<KDecoration2::DecorationButton>(QStringLiteral("button"), parent, QVariantList({QVariant::fromValue(type), QVariant::fromValue(decoration)}));
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/KF5/KCoreAddons/KPluginFactory:1,
                 from /home/lenni/Desktop/applet-window-buttons/libappletdecoration/previewbridge.cpp:36:
/usr/include/KF5/KCoreAddons/kpluginfactory.h:950:11: note: declared here
  950 | inline T *KPluginFactory::create(const QString &keyword, QObject *parent, const QVariantList &args)
      |           ^~~~~~~~~~~~~~
make[2]: *** [libappletdecoration/CMakeFiles/appletdecorationplugin.dir/build.make:216: libappletdecoration/CMakeFiles/appletdecorationplugin.dir/previewbridge.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:153: libappletdecoration/CMakeFiles/appletdecorationplugin.dir/all] Error 2
make: *** [Makefile:146: all] Error 2

@Lenni-builder Lenni-builder changed the title Can't compile on Nobara 38 (Fedora) and Plasma 5.27.6 Can't compile on Nobara 38 (Fedora based) and Plasma 5.27.6 Jul 26, 2023
@honzahana
Copy link

Same issue on Kubuntu 23.04.

@Lenni-builder
Copy link
Author

@honzahana I found this, it worked for me: #194 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants