Hello *, On Mon, 4 Dec 2023 10:11:34 +0100, Peter Seiderer <ps.report@xxxxxxx> wrote: > - v4l2grab needs libv4lconvert with fork support enabled > > Fixes: > > FAILED: contrib/test/v4l2grab > .../bootlin-armv7m-uclibc/host/bin/arm-linux-gcc -o contrib/test/v4l2grab contrib/test/v4l2grab.p/v4l2grab.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -Wl,-elf2flt=-r -static -Wl,--start-group lib/libv4l2/libv4l2.a lib/libv4lconvert/libv4lconvert.a -largp -pthread -ldl -lm -lrt -Wl,--end-group > .../bootlin-armv7m-uclibc/host/opt/ext-toolchain/arm-buildroot-uclinux-uclibcgnueabi/bin/ld.real: lib/libv4lconvert/libv4lconvert.a(libv4lconvert.c.o): in function `v4lconvert_destroy': > libv4lconvert.c:(.text+0x5c0): undefined reference to `v4lconvert_helper_cleanup' > .../bootlin-armv7m-uclibc/host/opt/ext-toolchain/arm-buildroot-uclinux-uclibcgnueabi/bin/ld.real: lib/libv4lconvert/libv4lconvert.a(libv4lconvert.c.o): in function `v4lconvert_convert_pixfmt': > libv4lconvert.c:(.text+0x1450): undefined reference to `v4lconvert_helper_decompress' > collect2: error: ld returned 1 exit status > > Signed-off-by: Peter Seiderer <ps.report@xxxxxxx> > --- > Notes: > - patch is more or less a quick work around, maybe an better handling > of the no-fork-case in libv4lconvert (without v4lconvert_helper_cleanup, > v4lconvert_helper_decompress, etc. as they depend on have_fork, see > lib/libv4lconvert/meson.build and conditional helper.c compile) > is possible??? Did find a more suitable solution (?): diff --git a/lib/libv4lconvert/meson.build b/lib/libv4lconvert/meson.build index 38740755..4bda5671 100644 --- a/lib/libv4lconvert/meson.build +++ b/lib/libv4lconvert/meson.build @@ -91,7 +91,7 @@ if have_fork include_directories : v4l2_utils_incdir) endif -if have_visibility +if have_visibility and have_fork libv4lconvert_c_args += [ '-fvisibility=hidden', '-DHAVE_LIBV4LCONVERT_HELPERS', Will provide an updated patch (or follow up patch as this one is already applied to git master) soon... Regards, Peter > --- > contrib/test/meson.build | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/contrib/test/meson.build b/contrib/test/meson.build > index 29b51df6..c1f40354 100644 > --- a/contrib/test/meson.build > +++ b/contrib/test/meson.build > @@ -25,6 +25,7 @@ sliced_vbi_detect = executable('sliced-vbi-detect', > sliced_vbi_detect_sources, > include_directories : v4l2_utils_incdir) > > +if have_fork > v4l2grab_sources = files( > 'v4l2grab.c', > > @@ -41,6 +42,7 @@ v4l2grab = executable('v4l2grab', > v4l2grab_sources, > dependencies : v4l2grab_deps, > include_directories : v4l2_utils_incdir) > +endif > > driver_test_sources = files( > 'driver-test.c',