From fcc027677da55c41dcaea045f5b9ff8b088e6495 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 7 Jun 2020 20:16:00 +0000 Subject: Initial commit of alternative cross LFS git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/cross2@11897 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter07/binutils-pass1.xml | 156 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 156 insertions(+) create mode 100644 chapter07/binutils-pass1.xml (limited to 'chapter07/binutils-pass1.xml') diff --git a/chapter07/binutils-pass1.xml b/chapter07/binutils-pass1.xml new file mode 100644 index 000000000..8658cfcfe --- /dev/null +++ b/chapter07/binutils-pass1.xml @@ -0,0 +1,156 @@ + + + %general-entities; +]> + + + + + + binutils-pass1 + &binutils-version; +
&binutils-url;
+
+ + Binutils-&binutils-version; - Pass 1 + + + Binutils + tools, pass 1 + + + + + + <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" + href="../chapter06/binutils.xml" + xpointer="xpointer(/sect1/sect2[1]/para[1])"/> + + <segmentedlist> + <segtitle>&buildtime;</segtitle> + <segtitle>&diskspace;</segtitle> + + <seglistitem> + <seg>&binutils-ch5p1-sbu;</seg> + <seg>&binutils-ch5p1-du;</seg> + </seglistitem> + </segmentedlist> + + </sect2> + + <sect2 role="installation"> + <title>Installation of Cross Binutils + + Go back and re-read the notes in the previous section. + Understanding the notes labeled important will save you a lot + of problems later. + + It is important that Binutils be the first package compiled + because both Glibc and GCC perform various tests on the available + linker and assembler to determine which of their own features to + enable. + + The Binutils documentation recommends building Binutils + in a dedicated build directory: + +mkdir -v build +cd build + + + In order for the SBU values listed in the rest of the book + to be of any use, measure the time it takes to build this package from + the configuration, up to and including the first install. To achieve + this easily, wrap the commands in a time + command like this: time { ./configure ... && ... + && make install; }. + + + Now prepare Binutils for compilation: + +../configure --prefix=$LFS/tools \ + --with-sysroot=$LFS \ + --target=$LFS_TGT \ + --disable-nls \ + --disable-werror + + + The meaning of the configure options: + + + --prefix=$LFS/tools + + This tells the configure script to prepare to install the + Binutils programs in the $LFS/tools directory. + + + + + --with-sysroot=$LFS + + For cross compilation, this tells the build system to look in + $LFS for the target system libraries as needed. + + + + + --target=$LFS_TGT + + Because the machine description in the LFS_TGT + variable is slightly different than the value returned by the + config.guess script, this switch will tell the + configure script to adjust Binutil's build system + for building a cross linker. + + + + + --disable-nls + + This disables internationalization as i18n is not needed for the + temporary tools. + + + + + --disable-werror + + This prevents the build from stopping in the event that there + are warnings from the host's compiler. + + + + + + Continue with compiling the package: + +make + + Install the package: + +make install + + + + + + + <para>Details on this package are located in + <xref linkend="contents-binutils" role="."/></para> + + </sect2> + +</sect1> -- cgit v1.2.3-54-g00ecf