From 73aedd1d35747ff2fad4ddf514dca810721a612a Mon Sep 17 00:00:00 2001 From: Alex Gronenwoud Date: Sat, 1 Nov 2003 22:31:50 +0000 Subject: Merging caption and installation sections for all packages in chapters 5 and 6. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3052 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter05/binutils-pass1-inst.xml | 106 -------------------------------------- 1 file changed, 106 deletions(-) delete mode 100644 chapter05/binutils-pass1-inst.xml (limited to 'chapter05/binutils-pass1-inst.xml') diff --git a/chapter05/binutils-pass1-inst.xml b/chapter05/binutils-pass1-inst.xml deleted file mode 100644 index 15465730b..000000000 --- a/chapter05/binutils-pass1-inst.xml +++ /dev/null @@ -1,106 +0,0 @@ -   - - -Installation of Binutils - -It is important that Binutils be the first package to get compiled, -because both Glibc and GCC perform various tests on the available linker and -assembler to determine which of their own features to enable. - -Even though Binutils is an important toolchain package, we are not -going to run the test suite at this early stage. First, the test suite framework -is not yet in place and second, the programs from this first pass will soon be -overwritten by those installed in the second pass. - -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 default -optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting or -modifying them when building Binutils. - -The Binutils documentation recommends building Binutils outside of the -source directory in a dedicated build directory: - -mkdir ../binutils-build -cd ../binutils-build - -If you want the SBU values listed in the rest of the book to be of -any use, you will have to measure the time it takes to build this package. To -achieve this easily, you could do something like: -time { ./configure ... && ... && ... && make install; }. - -Now prepare Binutils for compilation: - -../binutils-&binutils-version;/configure \ -    --prefix=/tools --disable-nls - -The meaning of the configure options: - - ---prefix=/tools: This tells the -configure script to prepare to install the Binutils programs in the -/tools directory. - ---disable-nls: This disables -internationalization (a word often shortened to i18n). We don't need this -for our static programs and nls often causes problems -when linking statically. - - -Continue with compiling the package: - -make configure-host -make LDFLAGS="-all-static" - -The meaning of the make options: - - -configure-host: This forces all the -subdirectories to be configured immediately. A statically linked build will -fail without it. We therefore use this option to work around the -problem. - -LDFLAGS="-all-static": This tells the -linker that all the Binutils programs should be linked statically. However, -strictly speaking, "-all-static" is first passed to the -libtool program which then passes -"-static" on to the linker. - - -And install the package: - -make install - -Now prepare the linker for the "locking in" of Glibc later on: - -make -C ld clean -make -C ld LDFLAGS="-all-static" LIB_PATH=/tools/lib - -The meaning of the make options: - - --C ld clean: This tells the make program -to remove all the compiled files, but only in the ld -subdirectory. - --C ld LDFLAGS="-all-static" LIB_PATH=/tools/lib: -This option rebuilds everything in the ld subdirectory. -Specifying the LIB_PATH makefile variable on the command line allows us to -override the default value and have it point to our temporary tools location. -The value of this variable specifies the linker's default library search path. -You'll see how this preparation is used later on in the -chapter. - - - - - -Do not yet remove the Binutils build and source directories. You -will need them again in their current state a bit further on in this -chapter. - - - - - - -- cgit v1.2.3-54-g00ecf