Installing Glibc-&glibc-version; The Glibc package contains the main C library. This library provides all the basic routines for allocating memory, searching directories, opening and closing files, reading and writing them, string handling, pattern matching, arithmetic, and so on. Estimated build time: &glibc-time; Estimated required disk space: &glibc-compsize; &aa-glibc-down; &aa-glibc-dep;    Installation of Glibc The Glibc build system is very well self-contained and will install perfectly, even though our compiler specs file and linker are still pointing at /tools. We cannot adjust the specs and linker before the Glibc install, because the Glibc autoconf tests would then give bogus results and thus defeat our goal of achieving a clean build. The test suite for Glibc in this section is considered critical. Our advice is to not skip it under any circumstance. Before starting to build Glibc, remember to unpack the Glibc-linuxthreads again inside the glibc-&glibc-version; directory, and to unset any environment variables that override the default optimization flags. Apply the same patch we used previously: patch -Np1 -i ../&glibc-sscanf-patch; The Glibc documentation recommends building Glibc outside of the source directory in a dedicated build directory: mkdir ../glibc-build cd ../glibc-build Now prepare Glibc for compilation: ../glibc-&glibc-version;/configure --prefix=/usr \     --disable-profile --enable-add-ons \     --libexecdir=/usr/lib --with-headers=/usr/include The meaning of the new configure options: --libexecdir=/usr/lib: This changes the location of the pt_chown program from its default of /usr/libexec to /usr/lib. The use of libexec is considered not FHS compliant because the FHS doesn't even mention it. --with-headers=/usr/include: This ensures that the kernel headers in /usr/include are used for this build. If you don't pass this switch then the headers from /tools/include are used which of course is not ideal (although they should be identical). Using this switch has the advantage that you will be informed immediately should you have forgotten to install the kernel headers into /usr/include. Compile the package: make Test the results: make check The test suite notes from are still very much appropriate here. Be sure to refer back there should you have any doubts. Though it is a harmless message, the install stage of Glibc will complain about the absence of /etc/ld.so.conf. Fix this annoying little warning with: touch /etc/ld.so.conf And install the package: make install The locales that can make your system respond in a different language weren't installed by the above command. Do it with this: make localedata/install-locales An alternative to running the previous command is to install only those locales which you need or want. This can be achieved using the localedef command. Information on this can be found in the INSTALL file in the glibc-&glibc-version; tree. However, there are a number of locales that are essential for the tests of future packages to pass correctly. The following instructions, in place of the install-locales command above, will install the minimum set of locales necessary for the tests to run successfully: mkdir -p /usr/lib/locale localedef -i de_DE -f ISO-8859-1 de_DE localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro localedef -i en_HK -f ISO-8859-1 en_HK localedef -i en_PH -f ISO-8859-1 en_PH localedef -i en_US -f ISO-8859-1 en_US localedef -i es_MX -f ISO-8859-1 es_MX localedef -i fr_FR -f ISO-8859-1 fr_FR localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro localedef -i it_IT -f ISO-8859-1 it_IT localedef -i ja_JP -f EUC-JP ja_JP Finally, build the linuxthreads man pages: make -C ../&glibc-dir;/linuxthreads/man And install these pages: make -C ../&glibc-dir;/linuxthreads/man install &c6-cf-glibc; &aa-glibc-shortdesc; &aa-glibc-desc;