Dear mentors, I am trying to update salmon [1] to the latest upstream version, but it won't build for reasons I can not really track down well. It uses CMake as the build system, which I am really not familiar with and to me feels a bit like magic incantations to me that mostly work if you use the right spells ;)
Here's the last snippet of build log right before the failure: [...] Determining if the function pthread_create exists in the pthreads failed with the following output: Change Dir: /build/salmon-0.8.0+ds1/obj-x86_64-linux-gnu/CMakeFiles/CMakeTmp Run Build Command:"/usr/bin/make" "cmTC_14592/fast" make[2]: Entering directory '/build/salmon-0.8.0+ds1/obj-x86_64-linux-gnu/CMakeFiles/CMakeTmp' /usr/bin/make -f CMakeFiles/cmTC_14592.dir/build.make CMakeFiles/cmTC_14592.dir/build make[3]: Entering directory '/build/salmon-0.8.0+ds1/obj-x86_64-linux-gnu/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_14592.dir/CheckFunctionExists.c.o /usr/lib/ccache/cc -g -O2 -fdebug-prefix-map=/build/salmon-0.8.0+ds1=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -DCHECK_FUNCTION_EXISTS=pthread_create -o CMakeFiles/cmTC_14592.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.11/Modules/CheckFunctionExists.c Linking C executable cmTC_14592 /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_14592.dir/link.txt --verbose=1 /usr/lib/ccache/cc -g -O2 -fdebug-prefix-map=/build/salmon-0.8.0+ds1=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -DCHECK_FUNCTION_EXISTS=pthread_create -Wl,-z,relro -Wl,-z,now -rdynamic CMakeFiles/cmTC_14592.dir/CheckFunctionExists.c.o -o cmTC_14592 -lpthreads /usr/bin/ld: cannot find -lpthreads collect2: error: ld returned 1 exit status make[3]: *** [CMakeFiles/cmTC_14592.dir/build.make:87: cmTC_14592] Error 1 make[3]: Leaving directory '/build/salmon-0.8.0+ds1/obj-x86_64-linux-gnu/CMakeFiles/CMakeTmp' make[2]: *** [Makefile:126: cmTC_14592/fast] Error 2 make[2]: Leaving directory '/build/salmon-0.8.0+ds1/obj-x86_64-linux-gnu/CMakeFiles/CMakeTmp' It looks like CMake can not find the POSIX threads libs (just the headers? or a library?) and tries various spellings and variations of the library to autodetect the correct situation on the platform? At least there seems to be some automagically created code involved that the build process is trying to compile... Maybe someone more familiar with CMake could give me some pointer where to continue looking? I'm a bit lost. I've tried to add libpthread-stubs0-dev to the build-deps but no success. I have also attached a full build log. Thanks in advance Sascha [1] https://salsa.debian.org/med-team/salmon
buildlog.txt.gz
Description: application/gzip
signature.asc
Description: OpenPGP digital signature