Duckonaut / hyprload

A Hyprland plugin manager
BSD 3-Clause "New" or "Revised" License
194 stars 13 forks source link

install fail wlr/backend.h: No such file #6

Open Dialgatrainer02 opened 1 year ago

Dialgatrainer02 commented 1 year ago

hyprload is failing to compile hyprland as the source doesnt contain backend.h and terminating comilation

/home/olivia/.local/share/hyprload/hyprland/src/helpers/../includes.hpp:36:10: fatal error: wlr/backend.h: No such file or directory 36 | #include <wlr/backend.h> | ^~~~~~~ compilation terminated. make: *** [Makefile:36: obj/HyprloadConfig.o] Error 1 make: Leaving directory '/home/olivia/.local/share/hyprload/src'

Duckonaut commented 1 year ago

Oh, oops. Can you check if this is still an issue after 866f809042db1cd90922d167bf1dcb4255b9e799 ? Just running the install script again (preferably fresh, so remove ~/.local/share/hyprload) should fix it

Dialgatrainer02 commented 1 year ago

i removed /usr/share/hyprload and re ran the script and got this error: /home/charlie/.local/share/hyprload/hyprland/src/helpers/../includes.hpp:74:10: fatal error: wlr/types/wlr_output_damage.h: No such file or directory 74 | #include <wlr/types/wlr_output_damage.h> | ^~~~~~~ compilation terminated. make: *** [Makefile:43: obj/HyprloadConfig.o] Error 1

Duckonaut commented 1 year ago

What version of Hyprland are you running? (package source, name, version in pacman and hyprctl version)

Dialgatrainer02 commented 1 year ago

pacman: hyprland-git r2757.011600ac-1 hyprctl version: Hyprland, built from branch main at commit 011600ac6e7f6d52f69d0890bffba519a9d81e3fdirty (keybinds: more intelligent fallback on silent move). flags: (if any) its the aur build

Duckonaut commented 1 year ago

That's very strange. Can you run git -C ~/.local/share/hyprload/hyprland rev-parse HEAD? Maybe there's a version mismatch in the Hyprland source cloned

Dialgatrainer02 commented 1 year ago

011600ac6e7f6d52f69d0890bffba519a9d81e3f this is the only output i get

Duckonaut commented 1 year ago

Alright, it seems to be related to this PR in Hyprland? It got accepted 3 days ago, and the commit you're running is 10 days old. Try updating Hyprland

Zeioth commented 1 year ago

My current error running:

curl -sSL https://raw.githubusercontent.com/Duckonaut/hyprload/main/install.sh | bash

is

[6/7] Installing hyprload
make: Entering directory '/home/zeioth/.local/share/hyprload/src'
g++ -c -o obj/HyprloadConfig.o src/HyprloadConfig.cpp -g -fPIC --no-gnu-unique -std=c++23 -I "/usr/include/pixman-1" -I "/usr/include/libdrm" -I "/home/zeioth/.local/share/hyprload/hyprland" -I "/home/zeioth/.local/share/hyprload/hyprland/protocols" -I "/home/zeioth/.local/share/hyprload/hyprland/subprojects/wlroots/include" -I "/home/zeioth/.local/share/hyprload/hyprland/subprojects/wlroots/build/include" -Iinclude
In file included from /home/zeioth/.local/share/hyprload/hyprland/src/helpers/../includes.hpp:53,
                 from /home/zeioth/.local/share/hyprload/hyprland/src/helpers/../defines.hpp:1,
                 from /home/zeioth/.local/share/hyprload/hyprland/src/helpers/Monitor.hpp:3,
                 from include/Hyprload.hpp:18,
                 from src/HyprloadConfig.cpp:4:
/home/zeioth/.local/share/hyprload/hyprland/subprojects/wlroots/include/wlr/types/wlr_layer_shell_v1.h:16:10: fatal error: wlr-layer-shell-unstable-v1-protocol.h: No such file or directory
   16 | #include "wlr-layer-shell-unstable-v1-protocol.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:44: obj/HyprloadConfig.o] Error 1
make: Leaving directory '/home/zeioth/.local/share/hyprload/src'

hyprland vesion

hyprctl version
Hyprland, built from branch main at commit f23455e592bca14e0abd9249de467cc71cd2850e dirty (makefile: use -f in copies to avoid errors on running hl).
Tag: v0.24.1-112-gf23455e5

flags: (if any)
Duckonaut commented 1 year ago

Oh, alright. After recent hyprland build system changes it seems the way to build protocol files like that one changed. Will check if I can fix it here or will I have to PR it to Hyprland

IronRevelation commented 1 year ago

I have the same problem as @Zeioth. Any progress? Btw, thank you for your work!

IronRevelation commented 1 year ago

For some unknonw reason it fixed itself

Duckonaut commented 1 year ago

What's the status here? Is anyone still having this issue?

Cstrp commented 1 year ago

Now I had the same problem. Hyprctl -v v0.30.0-22-g3f09b143

zjeffer commented 1 year ago

I'm now having the same issue. I created a fork of Hyprload to make it easier to debug the install script: https://github.com/zjeffer/hyprload (the same error occurs with your repo's install script, though).

Here's the compile error I'm getting:

[6/7] Installing hyprload
make: Entering directory '/home/zjeffer/.local/share/hyprload/src'
rm -rf obj
rm -f hyprload.so
make: Leaving directory '/home/zjeffer/.local/share/hyprload/src'
make: Entering directory '/home/zjeffer/.local/share/hyprload/src'
g++ -c -o obj/BuildProcessDescriptor.o src/BuildProcessDescriptor.cpp -g -fPIC --no-gnu-unique -std=c++23 `pkg-config --cflags pixman-1 libdrm hyprland` -Iinclude -DWLR_USE_UNSTABLE
g++ -c -o obj/HyprloadConfig.o src/HyprloadConfig.cpp -g -fPIC --no-gnu-unique -std=c++23 `pkg-config --cflags pixman-1 libdrm hyprland` -Iinclude -DWLR_USE_UNSTABLE
g++ -c -o obj/Hyprload.o src/Hyprload.cpp -g -fPIC --no-gnu-unique -std=c++23 `pkg-config --cflags pixman-1 libdrm hyprland` -Iinclude -DWLR_USE_UNSTABLE
g++ -c -o obj/HyprloadPlugin.o src/HyprloadPlugin.cpp -g -fPIC --no-gnu-unique -std=c++23 `pkg-config --cflags pixman-1 libdrm hyprland` -Iinclude -DWLR_USE_UNSTABLE
g++ -c -o obj/main.o src/main.cpp -g -fPIC --no-gnu-unique -std=c++23 `pkg-config --cflags pixman-1 libdrm hyprland` -Iinclude -DWLR_USE_UNSTABLE
g++ -c -o obj/util.o src/util.cpp -g -fPIC --no-gnu-unique -std=c++23 `pkg-config --cflags pixman-1 libdrm hyprland` -Iinclude -DWLR_USE_UNSTABLE
Hyprland headers found.
Building with XWayland support.
In file included from /usr/include/hyprland/src/includes.hpp:52,
                 from /usr/include/hyprland/src/defines.hpp:1,
                 from /usr/include/hyprland/src/helpers/Monitor.hpp:3,
                 from src/main.cpp:5:
/usr/include/wlr/types/wlr_layer_shell_v1.h:16:10: fatal error: wlr-layer-shell-unstable-v1-protocol.h: No such file or directory
   16 | #include "wlr-layer-shell-unstable-v1-protocol.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:62: obj/main.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from /usr/include/hyprland/src/includes.hpp:52,
                 from /usr/include/hyprland/src/debug/Log.hpp:7,
                 from src/util.cpp:13:
/usr/include/wlr/types/wlr_layer_shell_v1.h:16:10: fatal error: wlr-layer-shell-unstable-v1-protocol.h: No such file or directory
   16 | #include "wlr-layer-shell-unstable-v1-protocol.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:62: obj/util.o] Error 1
In file included from /usr/include/hyprland/src/includes.hpp:52,
                 from /usr/include/hyprland/src/defines.hpp:1,
                 from /usr/include/hyprland/src/helpers/Monitor.hpp:3,
                 from include/Hyprload.hpp:18,
                 from src/Hyprload.cpp:5:
/usr/include/wlr/types/wlr_layer_shell_v1.h:16:10: fatal error: wlr-layer-shell-unstable-v1-protocol.h: No such file or directory
   16 | #include "wlr-layer-shell-unstable-v1-protocol.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from /usr/include/hyprland/src/includes.hpp:52,
                 from /usr/include/hyprland/src/defines.hpp:1,
                 from /usr/include/hyprland/src/helpers/Monitor.hpp:3,
                 from include/Hyprload.hpp:18,
                 from src/HyprloadPlugin.cpp:5:
/usr/include/wlr/types/wlr_layer_shell_v1.h:16:10: fatal error: wlr-layer-shell-unstable-v1-protocol.h: No such file or directory
   16 | #include "wlr-layer-shell-unstable-v1-protocol.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from /usr/include/hyprland/src/includes.hpp:52,
                 from /usr/include/hyprland/src/defines.hpp:1,
                 from /usr/include/hyprland/src/helpers/Monitor.hpp:3,
                 from include/Hyprload.hpp:18,
                 from src/HyprloadConfig.cpp:4:
/usr/include/wlr/types/wlr_layer_shell_v1.h:16:10: fatal error: wlr-layer-shell-unstable-v1-protocol.h: No such file or directory
   16 | #include "wlr-layer-shell-unstable-v1-protocol.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:62: obj/Hyprload.o] Error 1
make: *** [Makefile:62: obj/HyprloadPlugin.o] Error 1
make: *** [Makefile:62: obj/HyprloadConfig.o] Error 1
make: Leaving directory '/home/zjeffer/.local/share/hyprload/src'

It's as if it's not compiling Hyprload with the -DWLR_USE_UNSTABLE flag? Which is strange because it looks like it is using it according to the Makefile.