WayfireWM / wayfire

A modular and extensible wayland compositor
https://wayfire.org/
MIT License
2.42k stars 179 forks source link

Build error 0.9.0 (core_seat_touch.cpp.o) #2491

Closed tim77 closed 1 month ago

tim77 commented 1 month ago

Describe the bug Failed to build new version 0.9.0.

Screenshots or stacktrace

FAILED: src/liblibwayfire.a.p/core_seat_touch.cpp.o 
g++ -Isrc/liblibwayfire.a.p -Isrc -I../src -I. -I.. -I../src/api -Isubprojects/wf-utils -I../subprojects/wf-utils -Isubprojects/wf-touch -I../subprojects/wf-touch -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include -I/usr/include/libevdev-1.0 -I/usr/include/libxml2 -I/usr/include/libpng16 -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -fpch-preprocess -include pch.h -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=c++17 '-DWAYFIRE_VERSION="0.9.0"' -DWLR_USE_UNSTABLE -fno-gnu-unique -Wno-unused-parameter -DWF_USE_CONFIG_H -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fPIC -DWITH_GZFILEOP -DHAS_ADDR2LINE=1 -DHAS_ASAN=0 -DPRINT_TRACE -MD -MQ src/liblibwayfire.a.p/core_seat_touch.cpp.o -MF src/liblibwayfire.a.p/core_seat_touch.cpp.o.d -o src/liblibwayfire.a.p/core_seat_touch.cpp.o -c ../src/core/seat/touch.cpp
../src/core/seat/touch.cpp: In member function ‘virtual wf::touch::action_status_t multi_action_t::update_state(const wf::touch::gesture_state_t&, const wf::touch::gesture_event_t&)’:
../src/core/seat/touch.cpp:358:60: error: ‘get_move_tolerance’ was not declared in this scope
  358 |             if (glm::length(state.get_center().delta()) >= get_move_tolerance())
      |                                                            ^~~~~~~~~~~~~~~~~~
../src/core/seat/touch.cpp:388:23: error: ‘class multi_action_t’ has no member named ‘get_move_tolerance’
  388 |                 this->get_move_tolerance())
      |                       ^~~~~~~~~~~~~~~~~~
../src/core/seat/touch.cpp: In member function ‘void wf::touch_interface_t::add_default_gestures()’:
../src/core/seat/touch.cpp:474:12: error: ‘class multi_action_t’ has no member named ‘set_move_tolerance’
  474 |     swipe->set_move_tolerance(SWIPE_INCORRECT_DRAG_TOLERANCE * sensitivity);
      |            ^~~~~~~~~~~~~~~~~~
../src/core/seat/touch.cpp:479:12: error: ‘class multi_action_t’ has no member named ‘set_move_tolerance’
  479 |     pinch->set_move_tolerance(PINCH_INCORRECT_DRAG_TOLERANCE * sensitivity);
      |            ^~~~~~~~~~~~~~~~~~
../src/core/seat/touch.cpp:486:17: error: ‘class multi_action_t’ has no member named ‘set_move_tolerance’
  486 |     edge_swipe->set_move_tolerance(SWIPE_INCORRECT_DRAG_TOLERANCE * sensitivity);
      |                 ^~~~~~~~~~~~~~~~~~

Wayfire version 0.9.0

soreau commented 1 month ago

It seems you have mismatched versions for wf-touch and wayfire. Wayfire is 0.9.0 but wf-touch is /builddir/build/SOURCES/wf-touch-caa1569.tar.gz per the build log, which is latest git master wf-touch. Instead you probably want wf-touch b8b844f or the version packaged with in the 0.9.0 subprojects directory.

tim77 commented 1 month ago

Thanks! Built successfully. This chores and lack of submodules automation in Fedora frustrating me.