lbonn / rofi

Rofi: A window switcher, run dialog and dmenu replacement - fork with wayland support
Other
943 stars 37 forks source link

[BUG] fails to build: libgwater/xcb.wrap file not found #2

Closed markstos closed 4 years ago

markstos commented 4 years ago

Versions

Steps to reproduce

What behaviour you see

The Meson build system
Version: 0.55.0
Source dir: /home/mark/git/rofi
Build dir: /home/mark/git/rofi/build
Build type: native build
WARNING: Unknown options: "xwayland"
The value of new options can be set with:
meson setup <builddir> --reconfigure -Dnew_option=new_value ...
Project name: rofi
Project version: 1.5.4-dev
C compiler for the host machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0")
C linker for the host machine: cc ld.bfd 2.34
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports arguments -Wparentheses: YES
Compiler for C supports arguments -Winline: YES
Compiler for C supports arguments -Wunreachable-code: YES
Compiler for C supports arguments -Werror=missing-prototypes: YES
Compiler for C supports arguments -Wno-inline -Winline: YES
Found pkg-config: /usr/bin/pkg-config (0.29.1)
Run-time dependency glib-2.0 found: YES 2.64.3
Run-time dependency gmodule-2.0 found: YES 2.64.3
Run-time dependency cairo found: YES 1.16.0
Run-time dependency gio-unix-2.0 found: YES 2.64.3
Run-time dependency pango found: YES 1.44.7
Run-time dependency pangocairo found: YES 1.44.7
Run-time dependency xkbcommon found: YES 0.10.0
Run-time dependency librsvg-2.0 found: YES 2.48.7
Run-time dependency libjpeg found: YES 2.0.3
Library m found: YES
meson.build:56: WARNING: Subproject name has a path separator. This may cause unexpected behaviour.

meson.build:55:0: ERROR: Subproject directory not found and libgwater/xcb.wrap file not found

What behaviour you expect to see

Additional details:

There is not a libgwater directory, but there is subprojects/libgwater folder, but it does not contain an "xcb.wrap" file.

markstos commented 4 years ago

I caught my option typo of "xwayland" vs "wayland", but the final error is the same.

lbonn commented 4 years ago

Submodules need to be initialized first:

git submodule update --init

See the steps here https://github.com/lbonn/rofi/blob/wayland/INSTALL.md#install-a-checkout-from-git

travankor commented 4 years ago

I have the same error even with the updated submodules.

lbonn commented 4 years ago

Ow, it looks like a meson version issue. It works with 0.53.2 that ships with my system but not the latest 0.55.0...

FWIW, this is also a problem on upstream.

lbonn commented 4 years ago

I haven't untangled all the terminology but it might be related to https://github.com/mesonbuild/meson/pull/6968 and https://github.com/mesonbuild/meson/pull/6902.

markstos commented 4 years ago

For context, the latest wlroots requires meson => 0.54:

https://github.com/swaywm/wlroots/pull/2348

Considering these are part of the same ecosystem, it would be great if the same version meson could be used to build both.

I just tried using the X11 version of rofi with Sway and it was a pretty poor experience. It got stuck at one point and only seemed to track XWayland windows.

I also looked at wofi, but it seems to be missing some features, so getting this fork to work is my preferred choice.

lbonn commented 4 years ago

Just to confirm that it works on 0.54, so the problem appears on 0.55.

I just shipped a quick fix until we solve this more gracefully.

markstos commented 4 years ago

I confirmed this fixed the build for me. On Ubuntu, I found I could install the deps needed to compile like this:

    sudo apt-get build-dep rofi

Technically, it's installing the deps for the upstream rofi with this command, but it worked for me (I already any Wayland-specific deps installed I think).

github-actions[bot] commented 3 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.