Open jevy opened 3 weeks ago
Was just compiling the latest wf-recorder against pipewire on nix. and got this issue
wf-recorder
pipewire
Running phase: unpackPhase @nix { "action": "setPhase", "phase": "unpackPhase" } unpacking source archive /nix/store/mlcvl0v0nwplcbff6l35y37bs7xmp838-source source root is source Running phase: patchPhase @nix { "action": "setPhase", "phase": "patchPhase" } Running phase: updateAutotoolsGnuConfigScriptsPhase @nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" } Running phase: configurePhase @nix { "action": "setPhase", "phase": "configurePhase" } mesonConfigurePhase flags: --prefix=/nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0 --libdir=/nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/lib --libexecdir=/nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/libexec --bindir=/nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/bin --sbindir=/nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/sbin --includedir=/nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/include --mandir=/nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/share/man --infodir=/nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/share/info --localedir=/nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/share/locale -Dauto_features=enabled -Dwrap_mode=nodownload --buildtype=plain [1mThe Meson build system[0m Version: 1.5.2 Source dir: [1m/build/source[0m Build dir: [1m/build/source/build[0m Build type: [1mnative build[0m Project name: [1mwf-recorder[0m Project version: [1m0.5.0[0m C compiler for the host machine: [1mgcc[0m (gcc 13.3.0 "gcc (GCC) 13.3.0") C linker for the host machine: [1mgcc[0m ld.bfd 2.43.1 C++ compiler for the host machine: [1mg++[0m (gcc 13.3.0 "g++ (GCC) 13.3.0") C++ linker for the host machine: [1mg++[0m ld.bfd 2.43.1 Host machine cpu family: [1mx86_64[0m Host machine cpu: [1mx86_64[0m Program [1mgit[0m found: [1;31mNO[0m Found pkg-config: [1;32mYES[0m [1m(/nix/store/946chn5ja4yrvnnc5izwv792cc57xpy8-pkg-config-wrapper-0.29.2/bin/pkg-config)[0m [1;34m0.29.2[0m Run-time dependency [1mwayland-client[0m found: [1;32mYES[0m [36m1.23.1[0m Run-time dependency [1mwayland-protocols[0m found: [1;32mYES[0m [36m1.38[0m Run-time dependency [1mlibpulse-simple[0m found: [1;32mYES[0m [36m17.0[0m Run-time dependency [1mlibpipewire-0.3[0m found: [1;32mYES[0m [36m1.2.5[0m [1mMessage:[0m Using default audio backend: auto Run-time dependency [1mlibavutil[0m found: [1;32mYES[0m [36m59.39.100[0m Run-time dependency [1mlibavcodec[0m found: [1;32mYES[0m [36m61.19.100[0m Run-time dependency [1mlibavformat[0m found: [1;32mYES[0m [36m61.7.100[0m Run-time dependency [1mlibavdevice[0m found: [1;32mYES[0m [36m61.3.100[0m Run-time dependency [1mlibavfilter[0m found: [1;32mYES[0m [36m10.4.100[0m Run-time dependency [1mlibswresample[0m found: [1;32mYES[0m [36m5.3.100[0m Run-time dependency [1mthreads[0m found: [1;32mYES[0m Run-time dependency [1mgbm[0m found: [1;32mYES[0m [36m24.2.5[0m Run-time dependency [1mlibdrm[0m found: [1;32mYES[0m [36m2.4.123[0m Configuring [1mconfig.h[0m using configuration Program [1mwayland-scanner[0m found: [1;32mYES[0m (/nix/store/ww53l1gfyxka2n94wllv9kfm0g9m87a4-wayland-scanner-1.23.1-bin/bin/wayland-scanner) [1mMessage:[0m ---------------- wf-recorder 0.5.0 ---------------- Default audio backend: pulse - pulse: true - pipewire: true Build targets in project: [1m2[0m wf-recorder [36m0.5.0[0m [1mUser defined options[0m auto_features: enabled bindir : /nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/bin buildtype : plain includedir : /nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/include infodir : /nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/share/info libdir : /nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/lib libexecdir : /nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/libexec localedir : /nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/share/locale mandir : /nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/share/man prefix : /nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0 sbindir : /nix/store/j98jqs07jj525kbcdwfxbig0d1j74azf-wf-recorder-0.5.0/sbin wrap_mode : nodownload Found ninja-1.12.1 at /nix/store/m5d2zsm9252fdr825lahyqxpn2av8136-ninja-1.12.1/bin/ninja mesonConfigurePhase: enabled\ parallel\ building Running phase: buildPhase @nix { "action": "setPhase", "phase": "buildPhase" } build flags: -j16 [1/20] Generating 'proto/libwl_protos.a.p/xdg-output-unstable-v1-protocol.c' [2/20] Generating 'proto/libwl_protos.a.p/wlr-screencopy-unstable-v1-protocol.c' [3/20] Generating 'proto/libwl_protos.a.p/xdg-output-unstable-v1-client-protocol.h' [4/20] Generating 'proto/libwl_protos.a.p/linux-dmabuf-unstable-v1-protocol.c' [5/20] Generating 'proto/libwl_protos.a.p/wlr-screencopy-unstable-v1-client-protocol.h' [6/20] Generating 'wf-recorder.p/xdg-output-unstable-v1-client-protocol.h' [7/20] Generating 'proto/libwl_protos.a.p/linux-dmabuf-unstable-v1-client-protocol.h' [8/20] Generating 'wf-recorder.p/linux-dmabuf-unstable-v1-client-protocol.h' [9/20] Generating 'wf-recorder.p/wlr-screencopy-unstable-v1-client-protocol.h' [10/20] Compiling C object wf-recorder.p/src_averr.c.o [11/20] Compiling C object proto/libwl_protos.a.p/meson-generated_wlr-screencopy-unstable-v1-protocol.c.o [12/20] Compiling C object proto/libwl_protos.a.p/meson-generated_xdg-output-unstable-v1-protocol.c.o [13/20] Compiling C object proto/libwl_protos.a.p/meson-generated_linux-dmabuf-unstable-v1-protocol.c.o [14/20] Linking static target proto/libwl_protos.a [15/20] Compiling C++ object wf-recorder.p/src_audio.cpp.o [16/20] Compiling C++ object wf-recorder.p/src_pulse.cpp.o [17/20] Compiling C++ object wf-recorder.p/src_frame-writer.cpp.o FAILED: wf-recorder.p/src_frame-writer.cpp.o g++ -Iwf-recorder.p -I. -I.. -I/nix/store/3336f1n8bj16f9pypnxmkjang2w8vcah-wayland-1.23.1-dev/include -I/nix/store/h0j33vqdmai1jvzlb89ilnkf5vqzn0zn-ffmpeg-7.1-dev/include -I/nix/store/jblzyd8dzz5vwmw6z3p6bzkxxkwffayf-mesa-24.2.5-dev/include -I/nix/store/lp2mk0k2qx41y2hln8vdbi003i434vr3-libdrm-2.4.123-dev/include -I/nix/store/lp2mk0k2qx41y2hln8vdbi003i434vr3-libdrm-2.4.123-dev/include/libdrm -I/nix/store/ipjdmzq8w2vc36lysgsg20f59jdbv673-libpulseaudio-17.0-dev/include -I/nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/pipewire-0.3 -I/nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2 -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=c++17 '-DWFRECORDER_VERSION="0.5.0"' -Wno-deprecated-declarations -D_REENTRANT -pthread -MD -MQ wf-recorder.p/src_frame-writer.cpp.o -MF wf-recorder.p/src_frame-writer.cpp.o.d -o wf-recorder.p/src_frame-writer.cpp.o -c ../src/frame-writer.cpp ../src/frame-writer.cpp: In member function 'void FrameWriter::init_video_filters(const AVCodec*)': ../src/frame-writer.cpp:374:53: error: 'AVFilterLink' {aka 'struct AVFilterLink'} has no member named 'frame_rate' 374 | this->videoCodecCtx->framerate = filter_output->frame_rate; // can be 1/0 if unknown | ^~~~~~~~~~ [18/20] Compiling C++ object wf-recorder.p/src_pipewire.cpp.o In file included from /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/param/audio/format-utils.h:12, from ../src/pipewire.cpp:4: /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/parser.h: In function 'void spa_pod_parser_init(spa_pod_parser*, const void*, uint32_t)': /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/parser.h:36:94: warning: missing initializer for member 'spa_pod_parser_state::flags' [-Wmissing-field-initializers] 36 | #define SPA_POD_PARSER_INIT(buffer,size) ((struct spa_pod_parser){ (buffer), (size), 0, {0} }) | ^ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/parser.h:41:19: note: in expansion of macro 'SPA_POD_PARSER_INIT' 41 | *parser = SPA_POD_PARSER_INIT(data, size); | ^~~~~~~~~~~~~~~~~~~ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/parser.h:36:94: warning: missing initializer for member 'spa_pod_parser_state::frame' [-Wmissing-field-initializers] 36 | #define SPA_POD_PARSER_INIT(buffer,size) ((struct spa_pod_parser){ (buffer), (size), 0, {0} }) | ^ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/parser.h:41:19: note: in expansion of macro 'SPA_POD_PARSER_INIT' 41 | *parser = SPA_POD_PARSER_INIT(data, size); | ^~~~~~~~~~~~~~~~~~~ In file included from /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/param/audio/format-utils.h:13: /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h: In function 'void spa_pod_builder_init(spa_pod_builder*, void*, uint32_t)': /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h:52:101: warning: missing initializer for member 'spa_pod_builder_state::flags' [-Wmissing-field-initializers] 52 | #define SPA_POD_BUILDER_INIT(buffer,size) ((struct spa_pod_builder){ (buffer), (size), 0, {0}, {0} }) | ^ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h:79:20: note: in expansion of macro 'SPA_POD_BUILDER_INIT' 79 | *builder = SPA_POD_BUILDER_INIT(data, size); | ^~~~~~~~~~~~~~~~~~~~ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h:52:101: warning: missing initializer for member 'spa_pod_builder_state::frame' [-Wmissing-field-initializers] 52 | #define SPA_POD_BUILDER_INIT(buffer,size) ((struct spa_pod_builder){ (buffer), (size), 0, {0}, {0} }) | ^ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h:79:20: note: in expansion of macro 'SPA_POD_BUILDER_INIT' 79 | *builder = SPA_POD_BUILDER_INIT(data, size); | ^~~~~~~~~~~~~~~~~~~~ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h:52:101: warning: missing initializer for member 'spa_callbacks::data' [-Wmissing-field-initializers] 52 | #define SPA_POD_BUILDER_INIT(buffer,size) ((struct spa_pod_builder){ (buffer), (size), 0, {0}, {0} }) | ^ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h:79:20: note: in expansion of macro 'SPA_POD_BUILDER_INIT' 79 | *builder = SPA_POD_BUILDER_INIT(data, size); | ^~~~~~~~~~~~~~~~~~~~ ../src/pipewire.cpp: In member function 'virtual void PipeWireReader::start()': /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h:52:101: warning: missing initializer for member 'spa_pod_builder_state::flags' [-Wmissing-field-initializers] 52 | #define SPA_POD_BUILDER_INIT(buffer,size) ((struct spa_pod_builder){ (buffer), (size), 0, {0}, {0} }) | ^ ../src/pipewire.cpp:191:32: note: in expansion of macro 'SPA_POD_BUILDER_INIT' 191 | struct spa_pod_builder b = SPA_POD_BUILDER_INIT(buffer, sizeof(buffer)); | ^~~~~~~~~~~~~~~~~~~~ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h:52:101: warning: missing initializer for member 'spa_pod_builder_state::frame' [-Wmissing-field-initializers] 52 | #define SPA_POD_BUILDER_INIT(buffer,size) ((struct spa_pod_builder){ (buffer), (size), 0, {0}, {0} }) | ^ ../src/pipewire.cpp:191:32: note: in expansion of macro 'SPA_POD_BUILDER_INIT' 191 | struct spa_pod_builder b = SPA_POD_BUILDER_INIT(buffer, sizeof(buffer)); | ^~~~~~~~~~~~~~~~~~~~ /nix/store/n4865ip986ymcsiwblm5ff89ybln9nw1-pipewire-1.2.5-dev/include/spa-0.2/spa/pod/builder.h:52:101: warning: missing initializer for member 'spa_callbacks::data' [-Wmissing-field-initializers] 52 | #define SPA_POD_BUILDER_INIT(buffer,size) ((struct spa_pod_builder){ (buffer), (size), 0, {0}, {0} }) | ^ ../src/pipewire.cpp:191:32: note: in expansion of macro 'SPA_POD_BUILDER_INIT' 191 | struct spa_pod_builder b = SPA_POD_BUILDER_INIT(buffer, sizeof(buffer)); | ^~~~~~~~~~~~~~~~~~~~ [19/20] Compiling C++ object wf-recorder.p/src_main.cpp.o ninja: build stopped: subcommand failed.
It looks like you need latest wf-recorder with this commit. The rest of the output are warnings related to pipewire. You can disable pipewire with -Dpipewire=disabled if you would like.
-Dpipewire=disabled
Was just compiling the latest
wf-recorder
againstpipewire
on nix. and got this issue