From acec47884b45309842156a3de7ebaf7b2b7191ef Mon Sep 17 00:00:00 2001 From: Dan Nichilson Date: Wed, 14 Mar 2007 04:31:35 +0000 Subject: [PATCH] Force use of host's linker through *-pass1 git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@7963 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter01/changelog.xml | 12 ++++++++++++ chapter05/binutils-pass1.xml | 13 ++++++++++++- chapter05/gcc-pass1.xml | 13 ++++++++++++- general.ent | 4 ++-- prologue/hostreqs.xml | 4 +++- 5 files changed, 41 insertions(+), 5 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 3a7b6ab90..044989575 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -36,6 +36,18 @@ --> + + 2007-03-14 + + + [dnicholson] - Force the host's linker to be used throughout + Binutils-Pass1 and GCC-Pass1. This makes the build more robust since + the host's compiler may not be compatible with the linker installed + in Binutils-Pass1, such as on newer Fedora hosts. + + + + 2007-03-04 diff --git a/chapter05/binutils-pass1.xml b/chapter05/binutils-pass1.xml index 3541aa055..bb12f9f0e 100644 --- a/chapter05/binutils-pass1.xml +++ b/chapter05/binutils-pass1.xml @@ -59,11 +59,22 @@ cd ../binutils-build Now prepare Binutils for compilation: -../binutils-&binutils-version;/configure --prefix=/tools --disable-nls +CC="gcc -B/usr/bin/" ../binutils-&binutils-version;/configure --prefix=/tools --disable-nls The meaning of the configure options: + + CC="gcc -B/usr/bin/" + + This forces gcc to prefer the linker from + the host in /usr/bin. This + is necessary on some hosts where the new ld + built here is not compatible with the host's gcc. + + + + --prefix=/tools diff --git a/chapter05/gcc-pass1.xml b/chapter05/gcc-pass1.xml index 1e35da182..7ecba825a 100644 --- a/chapter05/gcc-pass1.xml +++ b/chapter05/gcc-pass1.xml @@ -45,13 +45,24 @@ cd ../gcc-build Prepare GCC for compilation: -../gcc-&gcc-version;/configure --prefix=/tools \ +CC="gcc -B/usr/bin/" ../gcc-&gcc-version;/configure --prefix=/tools \ --with-local-prefix=/tools --disable-nls --enable-shared \ --enable-languages=c The meaning of the configure options: + + CC="gcc -B/usr/bin/" + + This forces gcc to prefer the linker from + the host in /usr/bin. This + is necessary on some hosts where the new ld + built in the previous section is not compatible with the host's + gcc. + + + --with-local-prefix=/tools diff --git a/general.ent b/general.ent index aa836118d..015217d33 100644 --- a/general.ent +++ b/general.ent @@ -1,6 +1,6 @@ - - + + diff --git a/prologue/hostreqs.xml b/prologue/hostreqs.xml index 6464f4c7a..9be5f38e9 100644 --- a/prologue/hostreqs.xml +++ b/prologue/hostreqs.xml @@ -56,7 +56,9 @@ - Gcc-2.95.3 (Versions + + Gcc-3.0.1 (Versions greater than &gcc-version; are not recommended as they have not been tested)