diff options
author | Greg Schafer <greg@linuxfromscratch.org> | 2004-01-20 05:59:05 +0000 |
---|---|---|
committer | Greg Schafer <greg@linuxfromscratch.org> | 2004-01-20 05:59:05 +0000 |
commit | d0a6c4c212b7204aef7ee577cf897d6c0c792520 (patch) | |
tree | 7fbb5f981f0583f923bbb53c9f98f6e1d239b954 /chapter05 | |
parent | fae442d5f04416d382f6d14e8d5fefe7cf23bbbb (diff) |
Upgraded to Glibc-2.3.3, Kbd-1.12, Perl-5.8.3 and Shadow-4.0.4.1.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3177 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'chapter05')
-rw-r--r-- | chapter05/coreutils.xml | 14 | ||||
-rw-r--r-- | chapter05/glibc.xml | 47 |
2 files changed, 35 insertions, 26 deletions
diff --git a/chapter05/coreutils.xml b/chapter05/coreutils.xml index 31d59312b..70362f9fc 100644 --- a/chapter05/coreutils.xml +++ b/chapter05/coreutils.xml @@ -15,7 +15,19 @@ Estimated required disk space: &coreutils-compsize-tools;</screen> <sect2> <title>Installation of Coreutils</title> -<para>Prepare Coreutils for compilation:</para> +<para>Coreutils has an issue when compiled against Glibc-&glibc-version;. +Without the patch below, some of the Coreutils utilities (head, tail, sort etc) +will reject their traditional syntax which has been in use for approximately 30 +years. The old syntax is so pervasive that compatibility must be preserved until +the many places where it is used can be updated. More details are provided in +the comments inside the patch itself. Use of this patch is by no means +compulsory but opting not to use it means you'll have deal with the consequences +yourself, i.e. patch the many software packages that use the old syntax. Apply +the patch:</para> + +<screen><userinput>patch -Np1 -i ../&coreutils-posixver-patch;</userinput></screen> + +<para>Now prepare Coreutils for compilation:</para> <screen><userinput>./configure --prefix=/tools</userinput></screen> diff --git a/chapter05/glibc.xml b/chapter05/glibc.xml index 1f178dd15..58f198917 100644 --- a/chapter05/glibc.xml +++ b/chapter05/glibc.xml @@ -13,11 +13,6 @@ Estimated required disk space: &glibc-compsize-tools;</screen> <sect2> <title>Installation of Glibc</title> -<para>Before starting to install Glibc, you must <userinput>cd</userinput> -into the <filename>glibc-&glibc-version;</filename> directory and unpack -Glibc-linuxthreads in that directory, not in the directory where you usually -unpack all the sources.</para> - <para>This package is known to behave badly when you have changed its default optimization flags (including the -march and -mcpu options). Therefore, if you have defined any environment variables that override @@ -27,11 +22,6 @@ them when building Glibc.</para> <para>Basically, compiling Glibc in any other way than the book suggests is putting the stability of your system at risk.</para> -<para>Glibc has a subtle problem when compiled with GCC &gcc-version;. -Apply the following patch to fix this:</para> - -<screen><userinput>patch -Np1 -i ../&glibc-sscanf-patch;</userinput></screen> - <para>The Glibc documentation recommends building Glibc outside of the source directory in a dedicated build directory:</para> @@ -40,11 +30,11 @@ cd ../glibc-build</userinput></screen> <para>Next, prepare Glibc for compilation:</para> -<screen><userinput>../glibc-&glibc-version;/configure --prefix=/tools \ - --disable-profile --enable-add-ons \ +<screen><userinput>../&glibc-dir;/configure --prefix=/tools \ + --disable-profile --enable-add-ons=linuxthreads \ --with-headers=/tools/include \ --with-binutils=/tools/bin \ - --without-gd</userinput></screen> + --without-gd --without-cvs</userinput></screen> <para>The meaning of the configure options:</para> @@ -53,8 +43,9 @@ cd ../glibc-build</userinput></screen> building of the libraries with profiling information. Omit this option if you plan to do profiling.</para></listitem> -<listitem><para><userinput>--enable-add-ons</userinput>: This enables any -add-ons that were installed with Glibc, in our case Linuxthreads.</para></listitem> +<listitem><para><userinput>--enable-add-ons=linuxthreads</userinput>: This +tells Glibc to use the Linuxthreads add-on as its threading +library.</para></listitem> <listitem><para><userinput>--with-binutils=/tools/bin</userinput> and <userinput>--with-headers=/tools/include</userinput>: Strictly speaking @@ -62,10 +53,16 @@ these switches are not required. But they ensure nothing can go wrong with regard to what kernel headers and Binutils programs get used during the Glibc build.</para></listitem> -<listitem><para><userinput> --without-gd</userinput>: This switch ensures +<listitem><para><userinput>--without-gd</userinput>: This switch ensures that we don't build the <userinput>memusagestat</userinput> program, which strangely enough insists on linking against the host's libraries (libgd, libpng, libz, and so forth).</para></listitem> + +<listitem><para><userinput>--without-cvs</userinput>: This is meant to prevent +the Makefiles from attempting automatic CVS commits when using a CVS snapshot. +But it's not actually needed these days. We use it because it silences an +annoying but harmless warning about a missing <filename>autoconf</filename> +program.</para></listitem> </itemizedlist> <para>During this stage you might see the following warning:</para> @@ -158,15 +155,15 @@ command will do so:</para> <screen><userinput>make localedata/install-locales</userinput></screen> -<para>An alternative to running the previous command is to install only -those locales which you need or want. This can be achieved by using the -<userinput>localedef</userinput> command. Information on this can be -found in the <filename>INSTALL</filename> file in the -<filename>glibc-&glibc-version;</filename> source. However, there are a number -of locales that are essential for the tests of future packages to pass, in -particular, the <emphasis>libstdc++</emphasis> tests from GCC. The following -instructions, instead of the install-locales target above, will install -the minimum set of locales necessary for the tests to run successfully:</para> +<para>An alternative to running the previous command is to install only those +locales which you need or want. This can be achieved by using the +<userinput>localedef</userinput> command. Information on this can be found in +the <filename>INSTALL</filename> file in the Glibc source. However, there are +a number of locales that are essential for the tests of future packages to +pass, in particular, the <emphasis>libstdc++</emphasis> tests from GCC. The +following instructions, instead of the install-locales target above, will +install the minimum set of locales necessary for the tests to run +successfully:</para> <screen><userinput>mkdir -p /tools/lib/locale localedef -i de_DE -f ISO-8859-1 de_DE |