pop-os / cosmic-epoch

Next generation Cosmic desktop environment
2.9k stars 78 forks source link

pipewire-rs fails to build: E0308 mismatched types in pw_thread_loop_timed_wait_full call #155

Closed andreinonea closed 7 months ago

andreinonea commented 10 months ago

I was trying to compile the systemd extension via just sysext and I could find only one compilation error along the way, which is

error[E0308]: mismatched types
    --> /home/andrei/.cargo/git/checkouts/pipewire-rs-e803a8db90410a99/ff923ee/pipewire/src/thread_loop.rs:212:17
     |
210  |             pw_sys::pw_thread_loop_timed_wait_full(
     |             -------------------------------------- arguments to this function are incorrect
211  |                 self.as_ptr(),
212  |                 &abstime as *const pw_sys::timespec,
     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
     |
     = note: expected raw pointer `*mut pipewire_sys::timespec`
                found raw pointer `*const pipewire_sys::timespec`
note: function defined here
    --> /home/andrei/git/ext/cosmic-epoch/xdg-desktop-portal-cosmic/target/release/build/pipewire-sys-1125ee3fe6f8b44c/out/bindings.rs:7012:12
     |
7012 |     pub fn pw_thread_loop_timed_wait_full(
     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

For more information about this error, try `rustc --explain E0308`.

I created already an issue in upstream, and this issue here is to let others know it exists, until it is fixed. Please find the issue at: https://gitlab.freedesktop.org/pipewire/pipewire-rs/-/issues/90

andreinonea commented 7 months ago

Issue fixed in upstream, I retried the build and no error received from pipewire-rs now.