diff options
-rw-r--r-- | appendixa/binutils-desc.xml | 14 | ||||
-rw-r--r-- | appendixa/binutils-shortdesc.xml | 20 | ||||
-rw-r--r-- | appendixa/binutils.xml | 1 | ||||
-rw-r--r-- | chapter05/binutils-exp.xml | 18 | ||||
-rw-r--r-- | chapter05/binutils-inst.xml | 33 | ||||
-rw-r--r-- | chapter05/binutils.xml | 5 | ||||
-rw-r--r-- | entities/binutils.ent | 1 |
7 files changed, 55 insertions, 37 deletions
diff --git a/appendixa/binutils-desc.xml b/appendixa/binutils-desc.xml index 20b7dd116..c0e9ec965 100644 --- a/appendixa/binutils-desc.xml +++ b/appendixa/binutils-desc.xml @@ -1,13 +1,8 @@ -<sect2><title>Contents of Binutils</title> +<sect2><title>Descriptions</title> <para>Last checked against version &binutils-contversion;.</para> -<sect3><title>Program Files</title> - -<para>addr2line, ar, as, gprof, ld, nm, objcopy, objdump, -ranlib, readelf, size, strings and strip</para></sect3> - -<sect3><title>Descriptions</title> +<sect3><title>Program files descriptions</title> <sect4><title>addr2line</title> <para>addr2line translates program addresses into file names and line numbers. @@ -79,10 +74,7 @@ modified copies under different names.</para></sect4> </sect3> -<sect3><title>Library Files</title> -<para>libbfd.[a,so] and libopcodes.[a,so]</para></sect3> - -<sect3><title>Descriptions</title> +<sect3><title>Library files descriptions</title> <sect4><title>libbfd</title> <para>libbfd is the Binary File Descriptor library.</para></sect4> diff --git a/appendixa/binutils-shortdesc.xml b/appendixa/binutils-shortdesc.xml new file mode 100644 index 000000000..e28cf4030 --- /dev/null +++ b/appendixa/binutils-shortdesc.xml @@ -0,0 +1,20 @@ +<sect2><title>Contents of Binutils</title> + +<para>Last checked against version &binutils-contversion;.</para> + +<para>Binutils is a collection of software development tools containing a +linker, assembler and other tools to work with object files and +archives.</para> + +<para>Binutils installs the following files:</para> + +<sect3><title>Program Files</title> + +<para>addr2line, ar, as, gprof, ld, nm, objcopy, objdump, +ranlib, readelf, size, strings and strip</para></sect3> + +<sect3><title>Library Files</title> +<para>libbfd.[a,so] and libopcodes.[a,so]</para></sect3> + +</sect2> + diff --git a/appendixa/binutils.xml b/appendixa/binutils.xml index 8f0ede362..c8ef4affb 100644 --- a/appendixa/binutils.xml +++ b/appendixa/binutils.xml @@ -3,6 +3,7 @@ <?dbhtml filename="binutils.html" dir="appendixa"?> &aa-binutils-down; +&aa-binutils-shortdesc; &aa-binutils-desc; &aa-binutils-dep; diff --git a/chapter05/binutils-exp.xml b/chapter05/binutils-exp.xml deleted file mode 100644 index 2b6983510..000000000 --- a/chapter05/binutils-exp.xml +++ /dev/null @@ -1,18 +0,0 @@ -<sect2> -<title>Command explanations</title> - -<para><userinput>mkdir ../binutils-build:</userinput> The installation -instructions for Binutils recommend creating a separate build directory -instead of compiling the package inside the source tree. So, we create a -binutils-build directory and work from there.</para> - -<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> - -<para><userinput>LDFLAGS="-all-static":</userinput> Setting the variable LDFLAGS -to the value -all-static causes binutils to be linked statically.</para> - -</sect2> - 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> diff --git a/chapter05/binutils.xml b/chapter05/binutils.xml index b52a71942..f3661ccbc 100644 --- a/chapter05/binutils.xml +++ b/chapter05/binutils.xml @@ -5,10 +5,9 @@ <screen>Estimated build time: &binutils-time-static; Estimated required disk space: &binutils-compsize-static;</screen> -&c5-binutils-inst; -&c5-binutils-exp; -&aa-binutils-desc; +&aa-binutils-shortdesc; &aa-binutils-dep; +&c5-binutils-inst; </sect1> diff --git a/entities/binutils.ent b/entities/binutils.ent index 836233d31..a59811065 100644 --- a/entities/binutils.ent +++ b/entities/binutils.ent @@ -9,6 +9,7 @@ <!ENTITY c6-binutils-exp SYSTEM "../chapter06/binutils-exp.xml"> <!ENTITY aa-binutils SYSTEM "../appendixa/binutils.xml"> +<!ENTITY aa-binutils-shortdesc SYSTEM "../appendixa/binutils-shortdesc.xml"> <!ENTITY aa-binutils-desc SYSTEM "../appendixa/binutils-desc.xml"> <!ENTITY aa-binutils-dep SYSTEM "../appendixa/binutils-dep.xml"> <!ENTITY aa-binutils-down SYSTEM "../appendixa/binutils-down.xml"> |