diff options
Diffstat (limited to 'chapter05/binutils-inst.xml')
-rw-r--r-- | chapter05/binutils-inst.xml | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/chapter05/binutils-inst.xml b/chapter05/binutils-inst.xml index 118762fcb..c03606a48 100644 --- a/chapter05/binutils-inst.xml +++ b/chapter05/binutils-inst.xml @@ -8,14 +8,37 @@ that override default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting or modifying them when building binutils. You have been warned.</para> -<para>Install Binutils by running the following commands:</para> +<para>It is recommended by the Binutils installation documentation to build +Binutils outside of the source directory in a dedicated directory:</para> +<para><screen><userinput>mkdir ../binutils-build +cd ../binutils-build</userinput></screen></para> -<para><screen><userinput>mkdir ../binutils-build && -cd ../binutils-build && -../binutils-&binutils-version;/configure --prefix=$LFS/static --disable-nls && -make LDFLAGS="-all-static" && +<para>Next, prepare Binutils to be compiled:</para> + +<para><screen><userinput>../binutils-&binutils-version;/configure --prefix=$LFS/static --disable-nls</userinput></screen></para> + +<para>The meaning of the (new) configure switches are:</para> + +<itemizedlist> +<listitem><para><userinput>--disable-nls:</userinput> This option disables +internationalization (also known as i18n). We don't need this for our +static programs and nls often causes problems when you're linking +statically.</para></listitem> +</itemizedlist> + +<para>We'll finish off by compiling and installing the package:</para> + +<para><screen><userinput>make LDFLAGS="-all-static" && make install</userinput></screen></para> +<para><emphasis>make LDFLAGS="-all-static"</emphasis> is how we tell +Binutils that all programs should be statically linked. Setting the +<emphasis>LDFLAGS</emphasis> variable is the common way of specifying we +want a static link to take place, however, its value and the way it is set +is not always the same. You'll see with the remaining packages that there +are different ways of setting up the <emphasis>LDFLAGS</emphasis> +variable.</para> + </sect2> |