I’m not running using make -j1 but I tried it anyway and several other parameter (e.g. -j20) but it did not resolve the issue.
Sorry for the confusion regarding I/use/include. Must be because I added KERNEL_HEADERS=/usr/include to my make command for the sake of trying various solution to solve the issue (but it did not help at all). I have checked my scripts and made sure there are no additional CFLAGS or anything of that sort included. I even tried to run the commands outside my bash scripts in normal terminal and still the error popped up. One dirty solution is to copy libc.a and libpthread.a from /tools/lib to /lib and it solves the problem but it is not an elegant solution. Do you think there is a way to skip those tests that rely on static libraries in libcap to avoid this problem? On Tue, 7 Jan 2020 at 06:34 Pierre Labastie via lfs-dev < lfs-dev@lists.linuxfromscratch.org> wrote: > Le 06/01/2020 à 19:35, Saul Tigh via lfs-dev a écrit : > > Dear LFS dev, > > First time poster here so please be gentle. I've compiled LFS dev several > > times before but this time libcap (section 6.28) is giving me a > headache. I'm > > following the latest version of LFS-systemd SVN-20200106 with ubuntu > 19.10 as > > host system running in virutalbox. I even installed libcap-dev on the > host > > system as part of new dependencies mentioned in LFS book. Also the "Host > > system requirement" script reports that the host system has the > prerequisites > > installed properly. But no matter what I do libcap complains that > pthread and > > libc cannot be found: > > > > make: Entering directory '/build_scripts/libcap/src/libcap-2.30' > > make -C libcap all > > make[1]: Entering directory > '/build_scripts/libcap/src/libcap-2.30/libcap' > > => making cap_names.list.h from /usr/include/linux/capability.h > > perl -e 'while ($l=<>) { if ($l =~ /^\#define[ \t](CAP[_A-Z]+)[ > > \t]+([0-9]+)\s+$/) { $tok=$1; $val=$2; $tok =~ tr/A-Z/a-z/; print > > "{\"$tok\",$val},\n"; } }' /usr/include/linux/capability.h | fgrep -v 0x > > > > cap_names.list.h > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -fPIC -I/usr/include > > -I/build_scripts/libcap/src/libcap-2.30/libcap/../libcap/include > _makenames.c > > -o _makenames > > ./_makenames > cap_names.h > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > > -I/build_scripts/libcap/src/libcap-2.30/libcap/../libcap/include -c > > cap_alloc.c -o cap_alloc.o > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > > -I/build_scripts/libcap/src/libcap-2.30/libcap/../libcap/include -c > cap_proc.c > > -o cap_proc.o > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > > -I/build_scripts/libcap/src/libcap-2.30/libcap/../libcap/include -c > > cap_extint.c -o cap_extint.o > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > > -I/build_scripts/libcap/src/libcap-2.30/libcap/../libcap/include -c > cap_flag.c > > -o cap_flag.o > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > > -I/build_scripts/libcap/src/libcap-2.30/libcap/../libcap/include -c > > cap_text.c -o cap_text.o > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > > -I/build_scripts/libcap/src/libcap-2.30/libcap/../libcap/include -c > cap_file.c > > -o cap_file.o > > gcc -Wl,-x -shared -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 > -Dlinux > > -Wall -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > > -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline > -Wshadow -g > > -L/build_scripts/libcap/src/libcap-2.30/libcap/../libcap > > -Wl,-soname,libcap.so.2 -o libcap.so.2.30 cap_alloc.o cap_proc.o > cap_extint.o > > cap_flag.o cap_text.o cap_file.o > > ln -sf libcap.so.2.30 libcap.so.2 > > ln -sf libcap.so.2 libcap.so > > ar rcs libcap.a cap_alloc.o cap_proc.o cap_extint.o cap_flag.o cap_text.o > > cap_file.o > > ranlib libcap.a > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > > -I/build_scripts/libcap/src/libcap-2.30/libcap/../libcap/include -c > psx.c -o psx.o > > ar rcs libpsx.a psx.o > > ranlib libpsx.a > > make[1]: Leaving directory '/build_scripts/libcap/src/libcap-2.30/libcap' > > make -C tests all > > make[1]: Entering directory '/build_scripts/libcap/src/libcap-2.30/tests' > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > -I/build_scripts/libcap/src/libcap-2.30/tests/../libcap/include > > -DNOWRAP psx_test.c -o psx_test > > -L/build_scripts/libcap/src/libcap-2.30/tests/../libcap -lpsx -lpthread > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > -I/build_scripts/libcap/src/libcap-2.30/tests/../libcap/include > > psx_test.c -o psx_test_wrap > > -L/build_scripts/libcap/src/libcap-2.30/tests/../libcap -lpsx -lpthread > > -Wl,-wrap,pthread_create > > gcc -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dlinux -Wall > > -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align > -Wstrict-prototypes > > -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -g -fPIC > > -I/usr/include > -I/build_scripts/libcap/src/libcap-2.30/tests/../libcap/include > > libcap_psx_test.c -o libcap_psx_test > > -L/build_scripts/libcap/src/libcap-2.30/tests/../libcap -lcap > > -L/build_scripts/libcap/src/libcap-2.30/tests/../libcap -lpsx -lpthread > > -Wl,-wrap,pthread_create --static > > /usr/bin/ld: cannot find -lpthread > > /usr/bin/ld: cannot find -lc > > collect2: error: ld returned 1 exit status > > make[1]: *** [Makefile:35: libcap_psx_test] Error 1 > > make[1]: Leaving directory '/build_scripts/libcap/src/libcap-2.30/tests' > > make: *** [Makefile:13: all] Error 2 > > make: Leaving directory '/build_scripts/libcap/src/libcap-2.30' > > > > Are you running make -j1? If so it is rather weird that the first two > compilations involving -lpthread pass, and not the third... > > I've looked at my logs: I do not have the "-I/usr/include" part. Where > does it > come from? Do you have special CFLAGS or LDFLAGS or CPPFLAGS? > > Pierre > -- > http://lists.linuxfromscratch.org/listinfo/lfs-dev > FAQ: http://www.linuxfromscratch.org/faq/ > Unsubscribe: See the above information page
-- http://lists.linuxfromscratch.org/listinfo/lfs-dev FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page