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

compile on arch 0.9.17-1 traceback -- field 'payload' has incomplete type 'std::string' { #2159

Closed
mariobelmar opened this issue May 6, 2023 · 3 comments

Comments

@mariobelmar
Copy link


[mario@hyouka tmp]$ LANG=en yay -Sy waybar-hyprland
[sudo] password for mario: 
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
AUR Explicit (1): waybar-hyprland-0.9.17-1
:: PKGBUILD up to date, skipping download: waybar-hyprland
  1 waybar-hyprland                          (Build Files Exist)
==> Packages to cleanBuild?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> 
  1 waybar-hyprland                          (Build Files Exist)
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> 
==> Making package: waybar-hyprland 0.9.17-1 (Sun May  7 00:30:04 2023)
==> Retrieving sources...
  -> Found waybar-hyprland-0.9.17.tar.gz
==> Validating source files with sha256sums...
    waybar-hyprland-0.9.17.tar.gz ... Passed
:: (1/1) Parsing SRCINFO: waybar-hyprland
==> Making package: waybar-hyprland 0.9.17-1 (Sun May  7 00:30:05 2023)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found waybar-hyprland-0.9.17.tar.gz
==> Validating source files with sha256sums...
    waybar-hyprland-0.9.17.tar.gz ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Extracting waybar-hyprland-0.9.17.tar.gz with bsdtar
bsdtar: Failed to set default locale
==> Sources are ready.
==> Making package: waybar-hyprland 0.9.17-1 (Sun May  7 00:30:07 2023)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Removing existing $pkgdir/ directory...
==> Starting build()...
The Meson build system
Version: 1.1.0
Source dir: /home/mario/.cache/yay/waybar-hyprland/src/Waybar-0.9.17
Build dir: /home/mario/.cache/yay/waybar-hyprland/src/Waybar-0.9.17/build
Build type: native build
Project name: waybar
Project version: 0.9.17
C compiler for the host machine: cc (gcc 13.1.1 "cc (GCC) 13.1.1 20230429")
C linker for the host machine: cc ld.bfd 2.40.0
C++ compiler for the host machine: c++ (gcc 13.1.1 "c++ (GCC) 13.1.1 20230429")
C++ linker for the host machine: c++ ld.bfd 2.40.0
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C++ supports link arguments -lc++fs: NO 
Compiler for C++ supports link arguments -lc++experimental: NO 
Compiler for C++ supports link arguments -lstdc++fs: YES 
Program git found: YES (/usr/bin/git)
WARNING: You should add the boolean check kwarg to the run_command call.
         It currently defaults to false,
         but it will default to true in future releases of meson.
         See also: https://github.com/mesonbuild/meson/issues/9300
Has header "filesystem" : YES 
Checking if "nl_langinfo with _NL_TIME_WEEK_1STDAY, _NL_TIME_FIRST_WEEKDAY" : links: YES 
Run-time dependency threads found: YES
Found pkg-config: /usr/bin/pkg-config (1.8.1)
Run-time dependency fmt found: YES 9.1.0
Run-time dependency spdlog found: YES 1.11.0
Run-time dependency wayland-client found: YES 1.22.0
Run-time dependency wayland-cursor found: YES 1.22.0
Run-time dependency wayland-protocols found: YES 1.31
Run-time dependency gtkmm-3.0 found: YES 3.24.7
Run-time dependency dbusmenu-gtk3-0.4 found: YES 16.04.0
Run-time dependency gio-unix-2.0 found: YES 2.76.2
Run-time dependency jsoncpp found: YES 1.9.4
Run-time dependency sigc++-2.0 found: YES 2.12.0
Found CMake: /usr/bin/cmake (3.26.3)
Run-time dependency libinotify found: NO (tried pkgconfig and cmake)
Run-time dependency epoll-shim found: NO (tried pkgconfig and cmake)
Run-time dependency libinput found: YES 1.23.0
Run-time dependency libnl-3.0 found: YES 3.7.0
Run-time dependency libnl-genl-3.0 found: YES 3.7.0
Run-time dependency upower-glib found: YES 1.90.0
Run-time dependency playerctl found: YES 2.4.1
Run-time dependency libpulse found: YES 16.1
Run-time dependency libudev found: YES 253
Run-time dependency libevdev found: YES 1.13.1
Run-time dependency libmpdclient found: YES 2.20
Run-time dependency xkbregistry found: YES 1.5.0
Run-time dependency jack found: YES 1.9.22
Run-time dependency wireplumber-0.4 found: YES 0.4.14
Library sndio found: YES
Checking for function "sioctl_open" with dependency -lsndio: YES 
Run-time dependency gtk-layer-shell-0 found: YES 0.8.1
Run-time dependency systemd found: YES 253
Run-time dependency date found: YES
Configuring waybar.service using configuration
Program wayland-scanner found: YES (/usr/bin/wayland-scanner)
Program gdbus-codegen found: YES (/usr/bin/gdbus-codegen)
Found pkg-config: /usr/bin/pkg-config (1.8.1)
Build-time dependency scdoc found: YES 1.11.2
Program /usr/bin/scdoc found: YES (/usr/bin/scdoc)
Program sh found: YES (/usr/bin/sh)
Configuring waybar.5.scd using configuration
meson.build:434: WARNING: Source item '/home/mario/.cache/yay/waybar-hyprland/src/Waybar-0.9.17/build/waybar.5.scd' cannot be converted to File object, because it is a generated file. This will become a hard error in the future.
Dependency catch2 skipped: feature tests disabled
Program clang-tidy found: NO
Build targets in project: 37
NOTICE: Future-deprecated features used:
 * 0.55.0: {'ExternalProgram.path'}
 * 0.56.0: {'dependency.get_pkgconfig_variable', 'meson.build_root', 'meson.source_root'}

waybar 0.9.17

  User defined options
    auto_features: enabled
    buildtype    : plain
    prefix       : /usr
    wrap_mode    : nodownload
    tests        : disabled

Found ninja-1.11.1 at /usr/bin/ninja
WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated.
ninja: Entering directory `build'
[0/1] Regenerating build files.
The Meson build system
Version: 1.1.0
Source dir: /home/mario/.cache/yay/waybar-hyprland/src/Waybar-0.9.17
Build dir: /home/mario/.cache/yay/waybar-hyprland/src/Waybar-0.9.17/build
Build type: native build
Project name: waybar
Project version: 0.9.17
C compiler for the host machine: cc (gcc 13.1.1 "cc (GCC) 13.1.1 20230429")
C linker for the host machine: cc ld.bfd 2.40.0
C++ compiler for the host machine: c++ (gcc 13.1.1 "c++ (GCC) 13.1.1 20230429")
C++ linker for the host machine: c++ ld.bfd 2.40.0
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C++ supports link arguments -lc++fs: NO (cached)
Compiler for C++ supports link arguments -lc++experimental: NO (cached)
Compiler for C++ supports link arguments -lstdc++fs: YES (cached)
Program git found: YES (/usr/bin/git)
WARNING: You should add the boolean check kwarg to the run_command call.
         It currently defaults to false,
         but it will default to true in future releases of meson.
         See also: https://github.com/mesonbuild/meson/issues/9300
Has header "filesystem" : YES (cached)
Checking if "nl_langinfo with _NL_TIME_WEEK_1STDAY, _NL_TIME_FIRST_WEEKDAY" : links: YES (cached)
Dependency threads found: YES unknown (cached)
Dependency fmt found: YES 9.1.0 (cached)
Dependency spdlog found: YES 1.11.0 (cached)
Dependency wayland-client found: YES 1.22.0 (cached)
Dependency wayland-cursor found: YES 1.22.0 (cached)
Dependency wayland-protocols found: YES 1.31 (cached)
Dependency gtkmm-3.0 found: YES 3.24.7 (cached)
Dependency dbusmenu-gtk3-0.4 found: YES 16.04.0 (cached)
Dependency gio-unix-2.0 found: YES 2.76.2 (cached)
Dependency jsoncpp found: YES 1.9.4 (cached)
Dependency sigc++-2.0 found: YES 2.12.0 (cached)
Found pkg-config: /usr/bin/pkg-config (1.8.1)
Found CMake: /usr/bin/cmake (3.26.3)
Run-time dependency libinotify found: NO (tried pkgconfig and cmake)
Run-time dependency epoll-shim found: NO (tried pkgconfig and cmake)
Dependency libinput found: YES 1.23.0 (cached)
Dependency libnl-3.0 found: YES 3.7.0 (cached)
Dependency libnl-genl-3.0 found: YES 3.7.0 (cached)
Dependency upower-glib found: YES 1.90.0 (cached)
Dependency playerctl found: YES 2.4.1 (cached)
Dependency libpulse found: YES 16.1 (cached)
Dependency libudev found: YES 253 (cached)
Dependency libevdev found: YES 1.13.1 (cached)
Dependency libmpdclient found: YES 2.20 (cached)
Dependency xkbregistry found: YES 1.5.0 (cached)
Dependency jack found: YES 1.9.22 (cached)
Dependency wireplumber-0.4 found: YES 0.4.14 (cached)
Library sndio found: YES
Checking for function "sioctl_open" with dependency -lsndio: YES (cached)
Dependency gtk-layer-shell-0 found: YES 0.8.1 (cached)
Dependency systemd found: YES 253 (cached)
Dependency date (modules: date::date, date::date-tz) found: YES unknown (cached)
Configuring waybar.service using configuration
Program wayland-scanner found: YES (/usr/bin/wayland-scanner)
Program gdbus-codegen found: YES (/usr/bin/gdbus-codegen)
Dependency scdoc found: YES 1.11.2 (cached)
Program /usr/bin/scdoc found: YES (/usr/bin/scdoc)
Program sh found: YES (/usr/bin/sh)
Configuring waybar.5.scd using configuration
../meson.build:434: WARNING: Source item '/home/mario/.cache/yay/waybar-hyprland/src/Waybar-0.9.17/build/waybar.5.scd' cannot be converted to File object, because it is a generated file. This will become a hard error in the future.
Dependency catch2 skipped: feature tests disabled
Program clang-tidy found: NO
Build targets in project: 37
NOTICE: Future-deprecated features used:
 * 0.55.0: {'ExternalProgram.path'}
 * 0.56.0: {'dependency.get_pkgconfig_variable', 'meson.build_root', 'meson.source_root'}

waybar 0.9.17

  User defined options
    auto_features: enabled
    buildtype    : plain
    prefix       : /usr
    wrap_mode    : nodownload
    experimental : true
    tests        : disabled

Found ninja-1.11.1 at /usr/bin/ninja
[61/133] Compiling C++ object waybar.p/src_modules_sway_ipc_client.cpp.o
FAILED: waybar.p/src_modules_sway_ipc_client.cpp.o 
c++ -Iwaybar.p -I. -I.. -I../include -Iprotocol -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -I/usr/include/gtkmm-3.0 -I/usr/lib/gtkmm-3.0/include -I/usr/include/giomm-2.4 -I/usr/lib/giomm-2.4/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/sysprof-4 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glibmm-2.4 -I/usr/lib/glibmm-2.4/include -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/gio-unix-2.0 -I/usr/include/cloudproviders -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/cairomm-1.0 -I/usr/lib/cairomm-1.0/include -I/usr/include/pangomm-1.4 -I/usr/lib/pangomm-1.4/include -I/usr/include/atkmm-1.6 -I/usr/lib/atkmm-1.6/include -I/usr/include/gtk-3.0/unix-print -I/usr/include/gdkmm-3.0 -I/usr/lib/gdkmm-3.0/include -I/usr/include/libdbusmenu-gtk3-0.4 -I/usr/include/libdbusmenu-glib-0.4 -I/usr/include/libnl3 -I/usr/include/libupower-glib -I/usr/include/playerctl -I/usr/include/wireplumber-0.4 -I/usr/include/pipewire-0.3 -I/usr/include/spa-0.2 -I/usr/include/libevdev-1.0 -I/usr/include/gtk-layer-shell -I -I/usr/include/libxml2 -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c++17 '-DVERSION="0.9.17"' -DHAVE_LANGINFO_1STDAY '-DSYSCONFDIR="//etc"' -DHAVE_CPU_LINUX -DHAVE_MEMORY_LINUX -DHAVE_SWAY -DHAVE_WLR -DHAVE_RIVER -DHAVE_HYPRLAND -DHAVE_LIBNL -DHAVE_GAMEMODE -DHAVE_UPOWER -DHAVE_MPRIS -DHAVE_LIBPULSE -DHAVE_LIBJACK -DHAVE_LIBWIREPLUMBER -DHAVE_DBUSMENU -DHAVE_LIBUDEV -DHAVE_LIBEVDEV -DHAVE_LIBINPUT -DHAVE_LIBMPDCLIENT -DHAVE_GTK_LAYER_SHELL -DHAVE_LIBSNDIO -DHAVE_GIO_UNIX -DWANT_RFKILL -DHAVE_LIBDATE -DUSE_EXPERIMENTAL -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -DUSE_OS_TZDB=1 -DONLY_C_LOCALE=0 -pthread -D_REENTRANT -DSPDLOG_SHARED_LIB -DSPDLOG_COMPILED_LIB -DSPDLOG_FMT_EXTERNAL -MD -MQ waybar.p/src_modules_sway_ipc_client.cpp.o -MF waybar.p/src_modules_sway_ipc_client.cpp.o.d -o waybar.p/src_modules_sway_ipc_client.cpp.o -c ../src/modules/sway/ipc/client.cpp
In file included from ../src/modules/sway/ipc/client.cpp:1:
../include/modules/sway/ipc/client.hpp:25:17: error: field 'payload' has incomplete type 'std::string' {aka 'std::__cxx11::basic_string<char>'}
   25 |     std::string payload;
      |                 ^~~~~~~
In file included from /usr/include/c++/13.1.1/iosfwd:41,
                 from /usr/include/c++/13.1.1/bits/shared_ptr.h:52,
                 from /usr/include/c++/13.1.1/memory:80,
                 from ../include/modules/sway/ipc/client.hpp:9:
/usr/include/c++/13.1.1/bits/stringfwd.h:72:11: note: declaration of 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   72 |     class basic_string;
      |           ^~~~~~~~~~~~
../include/modules/sway/ipc/client.hpp:37:35: error: 'const std::string waybar::modules::sway::Ipc::ipc_magic_' has incomplete type
   37 |   static inline const std::string ipc_magic_ = "i3-ipc";
      |                                   ^~~~~~~~~~
../include/modules/sway/ipc/client.hpp:31:60: error: could not convert '""' from 'const char [1]' to 'const std::string&' {aka 'const std::__cxx11::basic_string<char>&'}
   31 |   void sendCmd(uint32_t type, const std::string &payload = "");
      |                                                            ^~
      |                                                            |
      |                                                            const char [1]
../include/modules/sway/ipc/client.hpp:42:80: error: could not convert '""' from 'const char [1]' to 'const std::string&' {aka 'const std::__cxx11::basic_string<char>&'}
   42 |   struct ipc_response send(int fd, uint32_t type, const std::string &payload = "");
      |                                                                                ^~
      |                                                                                |
      |                                                                                const char [1]
../src/modules/sway/ipc/client.cpp: In constructor 'waybar::modules::sway::Ipc::Ipc()':
../src/modules/sway/ipc/client.cpp:8:48: error: invalid use of incomplete type 'const std::string' {aka 'const class std::__cxx11::basic_string<char>'}
    8 |   const std::string& socketPath = getSocketPath();
      |                                   ~~~~~~~~~~~~~^~
/usr/include/c++/13.1.1/bits/stringfwd.h:72:11: note: declaration of 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   72 |     class basic_string;
      |           ^~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp: At global scope:
../src/modules/sway/ipc/client.cpp:31:40: error: return type 'const std::string' {aka 'const class std::__cxx11::basic_string<char>'} is incomplete
   31 | const std::string Ipc::getSocketPath() const {
      |                                        ^~~~~
../src/modules/sway/ipc/client.cpp: In member function 'void waybar::modules::sway::Ipc::getSocketPath() const':
../src/modules/sway/ipc/client.cpp:34:27: error: invalid use of incomplete type 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   34 |     return std::string(env);
      |                           ^
/usr/include/c++/13.1.1/bits/stringfwd.h:72:11: note: declaration of 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   72 |     class basic_string;
      |           ^~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:36:15: error: aggregate 'std::string str' has incomplete type and cannot be defined
   36 |   std::string str;
      |               ^~~
../src/modules/sway/ipc/client.cpp:38:17: error: aggregate 'std::string str_buf' has incomplete type and cannot be defined
   38 |     std::string str_buf;
      |                 ^~~~~~~
../src/modules/sway/ipc/client.cpp:41:15: error: 'popen' was not declared in this scope; did you mean 'open'?
   41 |     if ((in = popen("sway --get-socketpath 2>/dev/null", "r")) == nullptr) {
      |               ^~~~~
      |               open
../src/modules/sway/ipc/client.cpp:42:18: error: 'runtime_error' is not a member of 'std'
   42 |       throw std::runtime_error("Failed to get socket path");
      |                  ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:4:1: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
    3 | #include <fcntl.h>
  +++ |+#include <stdexcept>
    4 | 
../src/modules/sway/ipc/client.cpp:44:12: error: 'fgets' was not declared in this scope; did you mean 'fgetws'?
   44 |     while (fgets(buf, sizeof(buf), in) != nullptr) {
      |            ^~~~~
      |            fgetws
../src/modules/sway/ipc/client.cpp:47:5: error: 'pclose' was not declared in this scope; did you mean 'close'?
   47 |     pclose(in);
      |     ^~~~~~
      |     close
../src/modules/sway/ipc/client.cpp:50:18: error: 'runtime_error' is not a member of 'std'
   50 |       throw std::runtime_error("Socket path is empty");
      |                  ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:50:18: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
../src/modules/sway/ipc/client.cpp: In member function 'int waybar::modules::sway::Ipc::open(const std::string&) const':
../src/modules/sway/ipc/client.cpp:62:16: error: 'runtime_error' is not a member of 'std'
   62 |     throw std::runtime_error("Unable to open Unix socket");
      |                ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:62:16: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
../src/modules/sway/ipc/client.cpp:68:26: error: invalid use of incomplete type 'const std::string' {aka 'const class std::__cxx11::basic_string<char>'}
   68 |   strncpy(addr.sun_path, socketPath.c_str(), sizeof(addr.sun_path) - 1);
      |                          ^~~~~~~~~~
/usr/include/c++/13.1.1/bits/stringfwd.h:72:11: note: declaration of 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   72 |     class basic_string;
      |           ^~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:72:16: error: 'runtime_error' is not a member of 'std'
   72 |     throw std::runtime_error("Unable to connect to Sway");
      |                ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:72:16: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
../src/modules/sway/ipc/client.cpp: In member function 'waybar::modules::sway::Ipc::ipc_response waybar::modules::sway::Ipc::recv(int)':
../src/modules/sway/ipc/client.cpp:78:15: error: aggregate 'std::string header' has incomplete type and cannot be defined
   78 |   std::string header;
      |               ^~~~~~
../src/modules/sway/ipc/client.cpp:87:23: error: could not convert '{0, 0, ""}' from '<brace-enclosed initializer list>' to 'waybar::modules::sway::Ipc::ipc_response'
   87 |       return {0, 0, ""};
      |                       ^
      |                       |
      |                       <brace-enclosed initializer list>
../src/modules/sway/ipc/client.cpp:90:18: error: 'runtime_error' is not a member of 'std'
   90 |       throw std::runtime_error("Unable to receive IPC header");
      |                  ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:90:18: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
../src/modules/sway/ipc/client.cpp:94:76: error: invalid use of incomplete type 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   94 |   auto magic = std::string(header.data(), header.data() + ipc_magic_.size());
      |                                                                            ^
/usr/include/c++/13.1.1/bits/stringfwd.h:72:11: note: declaration of 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   72 |     class basic_string;
      |           ^~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:96:16: error: 'runtime_error' is not a member of 'std'
   96 |     throw std::runtime_error("Invalid IPC magic");
      |                ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:96:16: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
../src/modules/sway/ipc/client.cpp:100:15: error: aggregate 'std::string payload' has incomplete type and cannot be defined
  100 |   std::string payload;
      |               ^~~~~~~
../src/modules/sway/ipc/client.cpp:108:18: error: 'runtime_error' is not a member of 'std'
  108 |       throw std::runtime_error("Unable to receive IPC payload");
      |                  ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:108:18: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
../src/modules/sway/ipc/client.cpp:112:49: error: could not convert '{<expression error>, <expression error>, <expression error>}' from '<brace-enclosed initializer list>' to 'waybar::modules::sway::Ipc::ipc_response'
  112 |   return {data32[0], data32[1], &payload.front()};
      |                                                 ^
      |                                                 |
      |                                                 <brace-enclosed initializer list>
../src/modules/sway/ipc/client.cpp: In member function 'waybar::modules::sway::Ipc::ipc_response waybar::modules::sway::Ipc::send(int, uint32_t, const std::string&)':
../src/modules/sway/ipc/client.cpp:116:15: error: aggregate 'std::string header' has incomplete type and cannot be defined
  116 |   std::string header;
      |               ^~~~~~
../src/modules/sway/ipc/client.cpp:120:15: error: invalid use of incomplete type 'const std::string' {aka 'const class std::__cxx11::basic_string<char>'}
  120 |   data32[0] = payload.size();
      |               ^~~~~~~
/usr/include/c++/13.1.1/bits/stringfwd.h:72:11: note: declaration of 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   72 |     class basic_string;
      |           ^~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:124:16: error: 'runtime_error' is not a member of 'std'
  124 |     throw std::runtime_error("Unable to send IPC header");
      |                ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:124:16: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
../src/modules/sway/ipc/client.cpp:126:18: error: invalid use of incomplete type 'const std::string' {aka 'const class std::__cxx11::basic_string<char>'}
  126 |   if (::send(fd, payload.c_str(), payload.size(), 0) == -1) {
      |                  ^~~~~~~
/usr/include/c++/13.1.1/bits/stringfwd.h:72:11: note: declaration of 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   72 |     class basic_string;
      |           ^~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:126:35: error: invalid use of incomplete type 'const std::string' {aka 'const class std::__cxx11::basic_string<char>'}
  126 |   if (::send(fd, payload.c_str(), payload.size(), 0) == -1) {
      |                                   ^~~~~~~
/usr/include/c++/13.1.1/bits/stringfwd.h:72:11: note: declaration of 'std::string' {aka 'class std::__cxx11::basic_string<char>'}
   72 |     class basic_string;
      |           ^~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:127:16: error: 'runtime_error' is not a member of 'std'
  127 |     throw std::runtime_error("Unable to send IPC payload");
      |                ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:127:16: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
../src/modules/sway/ipc/client.cpp: In member function 'void waybar::modules::sway::Ipc::subscribe(const std::string&)':
../src/modules/sway/ipc/client.cpp:141:16: error: 'runtime_error' is not a member of 'std'
  141 |     throw std::runtime_error("Unable to subscribe ipc event");
      |                ^~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:141:16: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
../src/modules/sway/ipc/client.cpp: In destructor 'waybar::modules::sway::Ipc::~Ipc()':
../src/modules/sway/ipc/client.cpp:18:10: warning: ignoring return value of 'ssize_t write(int, const void*, size_t)' declared with attribute 'warn_unused_result' [-Wunused-result]
   18 |     write(fd_, "close-sway-ipc", 14);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/modules/sway/ipc/client.cpp:23:10: warning: ignoring return value of 'ssize_t write(int, const void*, size_t)' declared with attribute 'warn_unused_result' [-Wunused-result]
   23 |     write(fd_event_, "close-sway-ipc", 14);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[66/133] Compiling C++ object waybar.p/src_modules_sway_bar.cpp.o
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: waybar-hyprland-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
waybar-hyprland - exit status 4
[mario@hyouka tmp]$ ^C
[mario@hyouka tmp]$ 
@gorhatlin
Copy link

Temporary solution - downgrade gcc and gcc-libs to version 12.2.1, then you can build package successfully.

@papppmac
Copy link

GCC13 moved a few includes around so some things (like stdexcept and string) that used to be implicit aren't anymore.

I'm on Arch and lazily sed'd it inline in the PKGBUILD, and I don't feel like screwing around with git on the spare machine I'm playing with hyprland on, but the fix is literally

sed -i '10 i #include <stdexcept>\n#include <string>' include/modules/sway/ipc/client.hpp

@D3vil0p3r
Copy link
Contributor

I think only <stdexcept> needs to be included. I see already <string> on the client.hpp file.

@Alexays Alexays closed this as completed Jun 5, 2023
jeepman32 added a commit to jeepman32/naudiodon that referenced this issue Mar 21, 2024
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

5 participants