I was attempting to build glibc in chapter six of LFS 8.3. In view of (a) the fact of me using a package manager and (b) the complexity and expected long compile times of glibc, I decided to test the compilation process and work out my build script while outside of my 8.3 system and as a non-root user.
Well, glibc fails, and it fails in an odd way, during the make phase (NOT the make install phase). Here are the last few lines of the make (using quote instead of code so the lines can wrap)
Quote:
make[4]: Leaving directory '/home/bob/compile/glibc/build_it/glibc-2.28/misc'
make subdir=nptl -C ../nptl ..=../ objdir=/home/bob/compile/glibc/build_it/glibc-2.28/build -f Makefile -f ../elf/rtld-Rules rtld-all rtld-modules='rtld-libc-lowlevellock.os rtld-libc_multiple_threads.os'
make[4]: Entering directory '/home/bob/compile/glibc/build_it/glibc-2.28/nptl'
/usr/bin/install -c -m 644 ../include/limits.h /usr/include/limits.h
/usr/bin/install: cannot remove '/usr/include/limits.h': Permission denied
/usr/bin/install -c -m 644 ../include/limits.h /usr/include/limits.h
/usr/bin/install: cannot remove '/usr/include/limits.h': Permission denied
make[4]: *** No rule to make target '/usr/include/limits.h', needed by '/home/bob/compile/glibc/build_it/glibc-2.28/build/pthread-errnos.h'. Stop.
make[4]: Leaving directory '/home/bob/compile/glibc/build_it/glibc-2.28/nptl'
make[3]: *** [../o-iterator.mk:9: /home/bob/compile/glibc/build_it/glibc-2.28/build/nptl/rtld-libc-lowlevellock.os] Error 2
make[3]: Leaving directory '/home/bob/compile/glibc/build_it/glibc-2.28/elf'
make[2]: *** [Makefile:474: /home/bob/compile/glibc/build_it/glibc-2.28/build/elf/rtld-libc.a] Error 2
make[2]: Leaving directory '/home/bob/compile/glibc/build_it/glibc-2.28/elf'
make[1]: *** [Makefile:258: elf/subdir_lib] Error 2
make[1]: Leaving directory '/home/bob/compile/glibc/build_it/glibc-2.28'
make: *** [Makefile:9: all] Error 2
|
Why on earth would the make phase try to install things to the system include directory? What madness is glibc doing to all those other people who unsuspectingly and trustingly compile it as root? And how do I get it to stop?
Thank you.