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
Mir fails to build with Wayland master, and cmake v3.22.0, linking with wl_proxy_marshal_flags #2261
Comments
I tested with cmake 3.21.0 and that worked, so it could be a cmake regression in 3.22 |
CNR: cmake 3.22.1 has been and is working fine on 22.04. (Not tried 3.22.0, but unlikely to be a Mir problem.) |
Still happening with v3.22.0 since now KDE needs CMake 3.22 |
2562: Release 2.9.0 r=AlanGriffiths a=AlanGriffiths ## ABI summary: * miral ABI bumped to 5 * mircommon ABI unchanged at 9 * mircookie ABI unchanged at 2 * mircore ABI bumped to 2 * miroil ABI bumped to 2 * mirplatform ABI unchanged at 23 * mirserver ABI unchanged at 58 * mirwayland ABI unchanged at 3 * mirplatformgraphics ABI unchanged at 20 * mirinputplatform ABI unchanged at 8 ## Enhancements: * [Wayland] Implement zwp_idle_inhibit_manager_v1 * [Wayland] Implement zwlr_virtual_pointer_v1 * [Wayland] Implement zwp_text_input_manager_v1 (Electron works with OSK) * [Wayland] Bump wl_seat to v8 and implement hi-res scrolling (Fixes: #2176, Fixes: #2499) * [Wayland platform] improve failed to connect error * [Wayland platform] Port to xdg-shell (Fixes #1903, Fixes: #2434) * [MirAL] Allow `--add-wayland-extenions all` * [MirAL] Allow servers to get repeated string options * [MirAL] Improvement to ExternalClientLauncher: Don't force clients to split command lines themselves * [MirAL] Tidy up event filtering API * [MirAL] Expose miral::Zone::id() * [Input] Filter 2 distinct bogus touch event scenarios (UBports) * [gbm-kms] new driver quirk to disable KMS modeset probe * [gbm-kms] Add defaults to driver-quirks for nvidia and evdi (Fixes: #2467) * [gbm-kms] Add defaults to driver-quirks for vc4-drm and v3d * [mir-smoke-test-runner] Enable working in a Wayland only environment ## Bugs fixed: * Fix ABI breakage of libmircore.so.1 with v2.8.0 vs v1.8.2 (Fixes #2465) * [Wayland] Text Input v2: do not use commit count as serial * [Wayland] Send keyboard modifiers after keyboard enter (Fixes: #2535, Fixes: #2025) * [Wayland] wlr-screencopy-v1: send .damage event as required (wayvnc fix) * [Wayland] wlr-screencopy-v1: Waits until the copy area has been damaged in `.copy_with_damage` request (wayvnc fix) * [MirAL] Unblock signals before execing child processes (Fixes: #1284) * [eglstream-kms] Kill clients, not Mir, when they submit bad EGLStreams (Fixes: #2061) * [eglstream-kms] Handle EGL errors in devnum_for_device (Fixes: #2426) * [test clients] Explicitly ask for a GLESv2 context (Fixes: #2440) * [renderers/gl] Clear framebuffer to opaque black (Fixes: #2427) * CMake cleanup for locally built dependencies (Fixes: #2507, Fixes: #2261) * Fix event timestamps (Fixes: #2577) Co-authored-by: Alan Griffiths <alan@octopull.co.uk> Co-authored-by: bors[bot] <26634292+bors[bot]@users.noreply.github.com>
It oddly builds with v3.20.0
wl_proxy_marshal_flags in Wayland Master caused problems building some other things, but it's odd that this seems to happen with a new version of cmake.
Below is the error output I get
[100%] Linking CXX executable ../../bin/miral-kiosk.bin
/usr/bin/ld: ../example-server-lib/libexample-shell-lib.a(wayland_shm.cpp.o): in function
WaylandShmBuffer::~WaylandShmBuffer()': /opt/include/wayland-client-protocol.h:2017: undefined reference to
wl_proxy_marshal_flags'/usr/bin/ld: ../example-server-lib/libexample-shell-lib.a(wayland_shm.cpp.o): in function
WaylandShm::get_buffer(mir::geometry::Size, mir::geometry::detail::IntWrapper<mir::geometry::StrideTag>)': /opt/include/wayland-client-protocol.h:1932: undefined reference to
wl_proxy_marshal_flags'/usr/bin/ld: /opt/include/wayland-client-protocol.h:1371: undefined reference to
wl_proxy_marshal_flags' /usr/bin/ld: ../example-server-lib/libexample-shell-lib.a(wayland_shm.cpp.o): in function
std::_Sp_counted_ptr_inplace<WaylandShmPool, std::allocator, (__gnu_cxx::_Lock_policy)2>::_M_dispose()':/opt/include/wayland-client-protocol.h:1389: undefined reference to
wl_proxy_marshal_flags' /usr/bin/ld: ../example-server-lib/libexample-shell-lib.a(sw_splash.cpp.o): in function
SwSplash::Self::operator()(wl_display*)':/opt/include/wayland-client-protocol.h:1038: undefined reference to
wl_proxy_marshal_flags' /usr/bin/ld: ../example-server-lib/libexample-shell-lib.a(wayland_app.cpp.o):/opt/include/wayland-client-protocol.h:1175: more undefined references to
wl_proxy_marshal_flags' followcollect2: error: ld returned 1 exit status
make[2]: *** [examples/miral-kiosk/CMakeFiles/miral-kiosk.dir/build.make:124: bin/miral-kiosk.bin] Error 1
make[1]: *** [CMakeFiles/Makefile2:3375: examples/miral-kiosk/CMakeFiles/miral-kiosk.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[100%] Linking CXX static library libmiral-spinner.a
[100%] Linking CXX executable ../../bin/mir_demo_server.bin
[100%] Built target miral-spinner
[100%] Built target mir_demo_server
make: *** [Makefile:146: all] Error 2
nerdopolis@nerdopolis:~$
The text was updated successfully, but these errors were encountered: