psifidotos / applet-window-buttons

Plasma 5 applet in order to show window buttons in your panels
GNU General Public License v2.0
404 stars 55 forks source link

Ubuntu 19.10. Build error #84

Closed nixway closed 4 years ago

nixway commented 4 years ago

OS: Kubuntu 19.10 + KDE Plasma 5.18 (Kubuntu Backports PPA) Deppends:

$ dpkg -l|grep g++
ii  g++                                           4:9.2.1-3.1ubuntu1                          amd64        GNU C++ compiler
ii  g++-9                                         9.2.1-9ubuntu2                              amd64        GNU C++ compiler
$ dpkg -l|grep extra-cmake-modules
ii  extra-cmake-modules                           5.67.0-0ubuntu1~ubuntu19.10~ppa1            amd64        Extra modules and scripts for CMake
$ dpkg -l|grep qtbase5-dev
ii  qtbase5-dev:amd64                             5.12.4+dfsg-4ubuntu1.1                      amd64        Qt 5 base development files
ii  qtbase5-dev-tools                             5.12.4+dfsg-4ubuntu1.1                      amd64        Qt 5 base development programs
$ dpkg -l|grep qtdeclarative5-dev
ii  qtdeclarative5-dev:amd64                      5.12.4-1                                    amd64        Qt 5 declarative development files
ii  qtdeclarative5-dev-tools                      5.12.4-1                                    amd64        Qt 5 declarative development programs
dpkg -l|grep libkf5declarative-dev
ii  libkf5declarative-dev                         5.67.0-0ubuntu1~ubuntu19.10~ppa1            amd64        development files for kdeclarative
$ dpkg -l|grep libkf5plasma-dev
ii  libkf5plasma-dev                              5.67.0-0ubuntu1~ubuntu19.10~ppa2            amd64        development files for plasma-framework
$ dpkg -l|grep libkdecorations2-dev
ii  libkdecorations2-dev                          4:5.18.0-0ubuntu1~ubuntu19.10~ppa1          amd64        library to create window decorations - development files
$ dpkg -l|grep gettext
ii  gettext                                       0.19.8.1-9                                  amd64        GNU Internationalization utilities
ii  gettext-base                                  0.19.8.1-9                                  amd64        GNU Internationalization utilities for the base system

Build error:

$ ./install.sh
-- Found KF5: success (found suitable version "5.67.0", minimum required is "5.38.0") found components:  CoreAddons Declarative Plasma PlasmaQuick 
-- KDECORATION2 VERSION MINOR : 18
-- Could not set up the appstream test. appstreamcli is missing.
-- Found KF5: success (found suitable version "5.67.0", minimum required is "5.26.0") found components:  Plasma WindowSystem I18n Service ConfigWidgets 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/build
[  9%] Automatic MOC for target appletdecorationplugin
[  9%] Built target appletdecorationplugin_autogen
[  9%] Building CXX object libappletdecoration/CMakeFiles/appletdecorationplugin.dir/previewbridge.cpp.o
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp: In member function ‘virtual std::unique_ptr<KDecoration2::DecoratedClientPrivate> Decoration::Applet::PreviewBridge::createClient(KDecoration2::DecoratedClient*, KDecoration2::Decoration*)’:
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/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/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp:27:
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/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/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewclient.h:31,
                 from /home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp:27:
/usr/include/KDecoration2/kdecoration2/private/decoratedclientprivate.h:76:19: note:    ‘virtual QSize KDecoration2::DecoratedClientPrivate::size() const’
   76 |     virtual QSize size() const = 0;
      |                   ^~~~
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp: In member function ‘virtual std::unique_ptr<KDecoration2::DecorationSettingsPrivate> Decoration::Applet::PreviewBridge::settings(KDecoration2::DecorationSettings*)’:
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp:97:21: warning: redundant move in return statement [-Wredundant-move]
   97 |     return std::move(ptr);
      |            ~~~~~~~~~^~~~~
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp:97:21: note: remove ‘std::move’ call
make[2]: *** [libappletdecoration/CMakeFiles/appletdecorationplugin.dir/build.make:180: libappletdecoration/CMakeFiles/appletdecorationplugin.dir/previewbridge.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:481: libappletdecoration/CMakeFiles/appletdecorationplugin.dir/all] Error 2
make: *** [Makefile:141: 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/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp: In member function ‘virtual std::unique_ptr<KDecoration2::DecoratedClientPrivate> Decoration::Applet::PreviewBridge::createClient(KDecoration2::DecoratedClient*, KDecoration2::Decoration*)’:
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/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/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp:27:
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/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/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewclient.h:31,
                 from /home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp:27:
/usr/include/KDecoration2/kdecoration2/private/decoratedclientprivate.h:76:19: note:    ‘virtual QSize KDecoration2::DecoratedClientPrivate::size() const’
   76 |     virtual QSize size() const = 0;
      |                   ^~~~
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp: In member function ‘virtual std::unique_ptr<KDecoration2::DecorationSettingsPrivate> Decoration::Applet::PreviewBridge::settings(KDecoration2::DecorationSettings*)’:
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp:97:21: warning: redundant move in return statement [-Wredundant-move]
   97 |     return std::move(ptr);
      |            ~~~~~~~~~^~~~~
/home/nixway/.src/window-buttons/0.8/plasma-applet-window-buttons-0.8.0/libappletdecoration/previewbridge.cpp:97:21: note: remove ‘std::move’ call
make[2]: *** [libappletdecoration/CMakeFiles/appletdecorationplugin.dir/build.make:180: libappletdecoration/CMakeFiles/appletdecorationplugin.dir/previewbridge.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:481: libappletdecoration/CMakeFiles/appletdecorationplugin.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
psifidotos commented 4 years ago

fixed with https://github.com/psifidotos/applet-window-buttons/commit/6d6c54467b1778317b759e410f05cdccef8fda94