From b3c46bf7307f4dc725455b1571505f5a6a4fbb12 Mon Sep 17 00:00:00 2001 From: Jeremy Utley Date: Sat, 28 Aug 2004 01:17:34 +0000 Subject: Experimental change - Added -B/usr/bin to compiler flags for GCC Pass 1 - should result in a fix for the problem we encountered with LFS 5.1.1 building an older toolchain from a newer. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@4058 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter01/changelog.xml | 5 +++++ chapter05/gcc-pass1.xml | 17 ++++++++++++++--- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 54e26743f..9a2b3ca21 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -89,6 +89,11 @@ first a summary, then a detailed log. +August 27, 2004 [jeremy]: (Experimental) Added -B/usr/bin flag +to GCC Pass 1 to solve possible problem where the host's toolchain is +actually newer than the one we're building. Change taken from Greg Schafer's +DIY-Linux project + August 27, 2004 [jeremy]: Added the readline display wrap patch to chapter 6. diff --git a/chapter05/gcc-pass1.xml b/chapter05/gcc-pass1.xml index 3f43d67bf..cba1baa93 100644 --- a/chapter05/gcc-pass1.xml +++ b/chapter05/gcc-pass1.xml @@ -44,13 +44,24 @@ cd ../gcc-build Prepare GCC for compilation: -../gcc-&gcc-version;/configure --prefix=/tools \ - --libexecdir=/tools/lib --with-local-prefix=/tools \ - --disable-nls --enable-shared --enable-languages=c +CC="gcc -B/usr/bin" ../gcc-&gcc-version;/configure + --prefix=/tools --libexecdir=/tools/lib + --with-local-prefix=/tools --disable-nls + --enable-shared --enable-languages=c The meaning of the configure options: + +CC="gcc -B/usr/bin" +This parameter fixes a possible problem with building GCC +at this stage, first noticed in LFS 5.1.1. If our host uses a new version +of Binutils than we compiled, the host compiler may try use features not +supported by our new linker, causing compilation errors. By passing the -B +flag to gcc, we cause the compiler to temporarily use the host's linker, +which solves the problem. + + --with-local-prefix=/tools The purpose of this switch is to remove /usr/local/include -- cgit v1.2.3-54-g00ecf