I've been working with static libraries today.
I was able to remove most of them and got through a complete LFS build. What
was left was:
bzip2:/usr/lib/libbz2.a
gcc:/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.2/libgcc.a
gcc:/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.2/libgcc_eh.a
gcc:/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.2/libgcov.a
glibc:/usr/lib/libc.a
glibc:/usr/lib/libc_nonshared.a
glibc:/usr/lib/libcrypt.a
glibc:/usr/lib/libdl.a
glibc:/usr/lib/libg.a
glibc:/usr/lib/libieee.a
glibc:/usr/lib/libm.a
glibc:/usr/lib/libmcheck.a
glibc:/usr/lib/libpthread.a
glibc:/usr/lib/libpthread_nonshared.a
glibc:/usr/lib/librpcsvc.a
However, some additional tests failed. The *new* failures are:
078-binutils-2.25:FAIL: static preinit array
078-binutils-2.25:FAIL: static init array
078-binutils-2.25:FAIL: static fini array
078-binutils-2.25:FAIL: static init array mixed
078-binutils-2.25:FAIL: Could not link a static executable
078-binutils-2.25:FAIL: Run mpx1 with -static
078-binutils-2.25:FAIL: Run mpx2 with -static
103-libtool-2.4.6: 70: Runpath in libtool library files FAILED
103-libtool-2.4.6:117: enforced lib prefix FAILED
103-libtool-2.4.6:170: Run tests with low max_cmd_len FAILED
110-automake-1.15:FAIL: t/lex-clean-cxx.sh
110-automake-1.15:FAIL: t/lex-depend-cxx.sh
I'm having second thoughts about removing the static libraries. There are
really not that many in LFS and some in glibc appear to really be needed. I'm
not sure if the gcc libraries above are needed or not.
OTOH, Ubuntu 14.04.2 has none of the above libraries in a standard install.
Is removing static libaries really worthwhile? I'm leaning to no. It takes
away options from the user that would be hard to replace without rebuilding the
entire system.
-- Bruce
--
http://lists.linuxfromscratch.org/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page