B. Toolchain Special Section
Glibc General Advice
Glibc is an incredibly complex beast. This is no "configure; make; make
install" type package. Extreme care is needed to get it right. If you're
not careful a build of Glibc will expose flaws in your:
-
Toolchain
-
Environment
-
Running Kernel
-
Kernel Headers
-
Technical Competence
Please read this enlightening post from the Glibc maintainer for the
"final word" on the subject:
http://sources.redhat.com/ml/libc-alpha/2004-03/msg00114.html
Despite all of that, it is still possible to attain a DIY production Glibc
that works very well. Here are some golden rules for building Glibc:
-
Always compile and install in a chroot environment. At the very least,
build as a non-privileged user. Never `make install' over a live
system.
-
See how the pro's do it. Study the RPM spec files closely, especially
those from Red Hat/Fedora (Ulrich Drepper, Roland McGrath and Jakub
Jelinek are the main forces behind Glibc development and these guys
are all @redhat.com).
-
Stay abreast of toolchain issues. Monitor the mailing lists for
Binutils, GCC and of course Glibc. Also monitor the Kernel list if
possible.
-
Always run `make check'. Investigate and understand any failures.
-
Recognize that grabbing all the latest and greatest source packages
from ftp.gnu.org is never the best strategy for compiling Glibc.
Which Binutils?
FIXME - My text from the original Purelfs hint was integrated into the LFS
FAQ
here.
Take that text, revamp it, make it current, add the missing bits, then put
a new version here in the form of some rationale discussion.
Dual Threading Libraries
FIXME - Insert procedure here.