%general-entities; ]> Cross Binutils-&binutils-version; Binutils cross tools Installation of Cross Binutils It is important that Binutils be compiled before Glibc and GCC because both Glibc and GCC perform various tests on the available linker and assembler to determine which of their own features to enable. AR=ar AS=as ../binutils-&binutils-dir;/configure \ --prefix=/cross-tools --host=${CLFS_HOST} --target=${CLFS_TARGET} \ --with-sysroot=${CLFS} --with-lib-path=/tools/lib --disable-nls \ --disable-static --disable-multilib The meaning of the new configure options: AR=ar AS=as This prevents Binutils from compiling with ${CLFS_HOST}-ar and ${CLFS_HOST}-as as they are provided by this package and therefore not installed yet. --host=${CLFS_HOST} When used with --target, this creates a cross-architecture executable that creates files for ${CLFS_TARGET} but runs on ${CLFS_HOST}. --target=${CLFS_TARGET} When used with --host, this creates a cross-architecture executable that creates files for ${CLFS_TARGET} but runs on ${CLFS_HOST}. --with-lib-path=/tools/lib This tells the configure script to specify the library search path during the compilation of Binutils, resulting in /tools/lib being passed to the linker. This prevents the linker from searching through library directories on the host. --disable-nls This disables internationalization as i18n is not needed for the cross-compile tools. --disable-multilib This option disables the building of a multilib capable Binutils. Compile the package: make configure-host make The meaning of the make options: configure-host This checks the host environment and makes sure all the necessary tools are available to compile Binutils. Install the package: make install Copy libiberty.h to /tools/include directory: cp -v ../binutils-&binutils-dir;/include/libiberty.h /tools/include <para>Details on this package are located in <xref linkend="contents-binutils" role="."/></para> </sect2> </sect1>