diff --git a/chapter04/chapter04.xml b/chapter04/chapter04.xml index 93c0c9155..a2aff1477 100644 --- a/chapter04/chapter04.xml +++ b/chapter04/chapter04.xml @@ -251,11 +251,12 @@ Expect Patch (&expect-patch-version;) - &expect-patch-size;: Gawk Patch (&gawk-patch-version;) - &gawk-patch-size;: -GCC Patch (&gcc-2953-patch-version;) - &gcc-2953-patch-size;: +GCC-2 Patch (&gcc-2953-patch-version;) - &gcc-2953-patch-size;: - -GCC-2 Return-type Patch: - +GCC-2 No Fixincludes Patch (&gcc-2953-no-fixinc-patch-version;) - &gcc-2953-no-fixinc-patch-size;: + +GCC-2 Return Type Patch (&gcc-2953-returntype-fix-patch-version;) - &gcc-2953-returntype-fix-patch-size;: + GCC No Fixincludes Patch: diff --git a/chapter05/binutils-pass1-inst.xml b/chapter05/binutils-pass1-inst.xml index 1002a5d43..32d8e0008 100644 --- a/chapter05/binutils-pass1-inst.xml +++ b/chapter05/binutils-pass1-inst.xml @@ -18,8 +18,8 @@ you have defined any environment variables that override default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting or modifying them when building Binutils. -It is recommended by the Binutils installation documentation to build -Binutils outside of the source directory in a dedicated directory: +The Binutils documentation recommends building Binutils outside of the +source directory in a dedicated build directory: mkdir ../binutils-build cd ../binutils-build diff --git a/chapter05/binutils-pass2-inst.xml b/chapter05/binutils-pass2-inst.xml index bb963f520..5317a0e55 100644 --- a/chapter05/binutils-pass2-inst.xml +++ b/chapter05/binutils-pass2-inst.xml @@ -7,7 +7,7 @@ chapter is considered not as critical as the one we run in Chapter 6. -First create a separate build directory again: +Create a separate build directory again: mkdir ../binutils-build cd ../binutils-build diff --git a/chapter05/gcc-pass1-inst.xml b/chapter05/gcc-pass1-inst.xml index bf38aa96e..dccef7ffd 100644 --- a/chapter05/gcc-pass1-inst.xml +++ b/chapter05/gcc-pass1-inst.xml @@ -17,8 +17,8 @@ Therefore, if you have defined any environment variables that override default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting or modifying them when building GCC. -It is recommended by the GCC installation documentation to build -GCC outside of the source directory in a dedicated directory: +The GCC documentation recommends building GCC outside of the source +directory in a dedicated build directory: mkdir ../gcc-build cd ../gcc-build diff --git a/chapter05/glibc-inst.xml b/chapter05/glibc-inst.xml index e63792bec..e234235ab 100644 --- a/chapter05/glibc-inst.xml +++ b/chapter05/glibc-inst.xml @@ -34,8 +34,8 @@ Apply the following patch to fix this: patch -Np1 -i ../glibc-2.3.2-sscanf-1.patch -The documentation that comes with Glibc recommends to build the package -not in the source directory but in a separate, dedicated directory: +The Glibc documentation recommends building Glibc outside of the source +directory in a dedicated build directory: mkdir ../glibc-build cd ../glibc-build diff --git a/chapter06/binutils-inst.xml b/chapter06/binutils-inst.xml index 1afc766e2..9ce7dbb8c 100644 --- a/chapter06/binutils-inst.xml +++ b/chapter06/binutils-inst.xml @@ -12,8 +12,8 @@ Therefore, if you have defined any environment variables that override default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting or modifying them when building Binutils. -It is recommended by the Binutils installation documentation to build -Binutils outside of the source directory: +The Binutils documentation recommends building Binutils outside of the +source directory in a dedicated build directory: mkdir ../binutils-build cd ../binutils-build diff --git a/chapter06/gcc-2953-inst.xml b/chapter06/gcc-2953-inst.xml index d229c3f85..e828bf3de 100644 --- a/chapter06/gcc-2953-inst.xml +++ b/chapter06/gcc-2953-inst.xml @@ -16,17 +16,31 @@ GCC have not received as much testing for Linux kernel compilation. Using a later version is likely to work, however, we recommend adhering to the kernel developer's advice and using the version here to compile your kernel. +We don't install the C++ compiler or libraries here. However, there +may be reasons why you would want to install them. More information can be found +at . + We'll install this older release of GCC into the non-standard prefix of /opt so as to avoid interfering with the system GCC already installed in /usr . -patch -Np1 -i ../gcc-2.95.3-2.patch -patch -Np1 -i ../gcc-2.95.3-returntype-fix.patch -echo timestamp > gcc/cstamp-h.in -mkdir ../gcc-2-build -cd ../gcc-2-build -../gcc-2.95.3/configure --prefix=/opt/gcc-2.95.3 \ +Apply the patches and make a small adjustment: + +patch -Np1 -i ../gcc-&gcc-2953-patch-version;.patch +patch -Np1 -i ../gcc-&gcc-2953-no-fixinc-patch-version;-no-fixinc.patch +patch -Np1 -i ../gcc-&gcc-2953-returntype-fix-patch-version;-returntype-fix.patch +echo timestamp > gcc/cstamp-h.in + +The GCC documentation recommends building GCC outside of the source +directory in a dedicated build directory: + +mkdir ../gcc-2-build +cd ../gcc-2-build + +Compile and install gcc: + +../gcc-2.95.3/configure --prefix=/opt/gcc-2.95.3 \     --enable-shared --enable-languages=c \     --enable-threads=posix make bootstrap diff --git a/chapter06/gcc-inst.xml b/chapter06/gcc-inst.xml index 4a5c6fc2e..63d6383c4 100644 --- a/chapter06/gcc-inst.xml +++ b/chapter06/gcc-inst.xml @@ -25,9 +25,8 @@ patch -Np1 -i ../gcc-3.3.1-suppress-libiberty.patch The second patch here suppresses the installation of libiberty from GCC, as we will use the one provided by binutils instead. -GCC's installation documentation recommends to build the package in a -dedicated directory separate from the source tree. Create this build -directory and go there: +The GCC documentation recommends building GCC outside of the source +directory in a dedicated build directory: mkdir ../gcc-build cd ../gcc-build diff --git a/chapter06/glibc-inst.xml b/chapter06/glibc-inst.xml index c380b98da..61a37a25a 100644 --- a/chapter06/glibc-inst.xml +++ b/chapter06/glibc-inst.xml @@ -22,8 +22,8 @@ flags. patch -Np1 -i ../glibc-2.3.2-sscanf-1.patch -The documentation that comes with Glibc recommends to build the package -not in the source directory but in a separate, dedicated directory: +The Glibc documentation recommends building Glibc outside of the source +directory in a dedicated build directory: mkdir ../glibc-build cd ../glibc-build diff --git a/entities/gcc-2953.ent b/entities/gcc-2953.ent index 54e9d4ce0..88325afe6 100644 --- a/entities/gcc-2953.ent +++ b/entities/gcc-2953.ent @@ -16,6 +16,10 @@ + + + +