|
@@ -3,7 +3,7 @@
|
|
|
<!ENTITY % general-entities SYSTEM "../general.ent">
|
|
|
%general-entities;
|
|
|
]>
|
|
|
-<sect1 id="ch-tools-binutils-pass1">
|
|
|
+<sect1 id="ch-tools-binutils-pass1" role="wrap">
|
|
|
<title>Binutils-&binutils-version; - Pass 1</title>
|
|
|
<?dbhtml filename="binutils-pass1.html"?>
|
|
|
|
|
@@ -11,15 +11,20 @@
|
|
|
<primary sortas="a-Binutils">Binutils</primary>
|
|
|
<secondary>tools, pass 1</secondary></indexterm>
|
|
|
|
|
|
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/binutils.xml" xpointer="xpointer(/sect1/para[1])"/>
|
|
|
+<sect2 role="package"><title/>
|
|
|
+<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/binutils.xml" xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
|
|
|
|
|
|
-<screen>&buildtime; 1.0 SBU
|
|
|
-&diskspace; 194 MB</screen>
|
|
|
+<segmentedlist>
|
|
|
+<segtitle>&buildtime;</segtitle>
|
|
|
+<segtitle>&diskspace;</segtitle>
|
|
|
+<seglistitem><seg>1.0 SBU</seg><seg>194 MB</seg></seglistitem>
|
|
|
+</segmentedlist>
|
|
|
|
|
|
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/binutils.xml" xpointer="xpointer(/sect1/para[2])"/>
|
|
|
+<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/binutils.xml" xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/>
|
|
|
|
|
|
+</sect2>
|
|
|
|
|
|
-<sect2>
|
|
|
+<sect2 role="installation">
|
|
|
<title>Installation of Binutils</title>
|
|
|
|
|
|
<para>It is important that Binutils be the first package to get compiled,
|
|
@@ -51,16 +56,20 @@ like this: <userinput>time { ./configure ... && ... && ...
|
|
|
|
|
|
<para>The meaning of the configure options:</para>
|
|
|
|
|
|
-<itemizedlist>
|
|
|
-<listitem><para><userinput>--prefix=/tools</userinput>: This tells the
|
|
|
-configure script to prepare to install the Binutils programs in the
|
|
|
-<filename>/tools</filename> directory.</para></listitem>
|
|
|
-
|
|
|
-<listitem><para><userinput>--disable-nls</userinput>: This disables
|
|
|
-internationalization (a word often shortened to i18n). We don't need this
|
|
|
-for our static programs and <emphasis>nls</emphasis> often causes problems
|
|
|
-when linking statically.</para></listitem>
|
|
|
-</itemizedlist>
|
|
|
+<variablelist>
|
|
|
+<varlistentry>
|
|
|
+<term><userinput>--prefix=/tools</userinput></term>
|
|
|
+<listitem><para>This tells the configure script to prepare to install the Binutils
|
|
|
+programs in the <filename>/tools</filename> directory.</para></listitem>
|
|
|
+</varlistentry>
|
|
|
+
|
|
|
+<varlistentry>
|
|
|
+<term><userinput>--disable-nls</userinput></term>
|
|
|
+<listitem><para>This disables internationalization (a word often shortened to
|
|
|
+i18n). We don't need this for our static programs and <emphasis>nls</emphasis>
|
|
|
+often causes problems when linking statically.</para></listitem>
|
|
|
+</varlistentry>
|
|
|
+</variablelist>
|
|
|
|
|
|
<para>Continue with compiling the package:</para>
|
|
|
|
|
@@ -69,18 +78,22 @@ make LDFLAGS="-all-static"</userinput></screen>
|
|
|
|
|
|
<para>The meaning of the make parameters:</para>
|
|
|
|
|
|
-<itemizedlist>
|
|
|
-<listitem><para><userinput>configure-host</userinput>: 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.</para></listitem>
|
|
|
-
|
|
|
-<listitem><para><userinput>LDFLAGS="-all-static"</userinput>: This tells the
|
|
|
-linker that all the Binutils programs should be linked statically. However,
|
|
|
-strictly speaking, <emphasis>"-all-static"</emphasis> is passed to the
|
|
|
-<command>libtool</command> program, which then passes
|
|
|
+<variablelist>
|
|
|
+<varlistentry>
|
|
|
+<term><userinput>configure-host</userinput></term>
|
|
|
+<listitem><para>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.</para></listitem>
|
|
|
+</varlistentry>
|
|
|
+
|
|
|
+<varlistentry>
|
|
|
+<term><userinput>LDFLAGS="-all-static"</userinput></term>
|
|
|
+<listitem><para>This tells the linker that all the Binutils programs should be
|
|
|
+linked statically. However, strictly speaking, <emphasis>"-all-static"</emphasis>
|
|
|
+is passed to the <command>libtool</command> program, which then passes
|
|
|
<emphasis>"-static"</emphasis> to the linker.</para></listitem>
|
|
|
-</itemizedlist>
|
|
|
+</varlistentry>
|
|
|
+</variablelist>
|
|
|
|
|
|
<para>Compilation is complete. Normally we would now run the test suite, but
|
|
|
at this early stage the test suite framework (Tcl, Expect and DejaGnu) is not
|
|
@@ -99,18 +112,24 @@ make -C ld LDFLAGS="-all-static" LIB_PATH=/tools/lib</userinput></screen>
|
|
|
|
|
|
<para>The meaning of the make parameters:</para>
|
|
|
|
|
|
-<itemizedlist>
|
|
|
-<listitem><para><userinput>-C ld clean</userinput>: This tells the make program
|
|
|
-to remove all the compiled files in the <filename class="directory">ld</filename> subdirectory.</para></listitem>
|
|
|
-
|
|
|
-<listitem><para><userinput>-C ld LDFLAGS="-all-static"
|
|
|
-LIB_PATH=/tools/lib</userinput>: This option rebuilds everything in the
|
|
|
+<variablelist>
|
|
|
+<varlistentry>
|
|
|
+<term><userinput>-C ld clean</userinput></term>
|
|
|
+<listitem><para>This tells the make program to remove all the compiled files
|
|
|
+in the <filename class="directory">ld</filename> subdirectory.</para></listitem>
|
|
|
+</varlistentry>
|
|
|
+
|
|
|
+<varlistentry>
|
|
|
+<term><userinput>-C ld LDFLAGS="-all-static"
|
|
|
+LIB_PATH=/tools/lib</userinput></term>
|
|
|
+<listitem><para>This option rebuilds everything in the
|
|
|
<filename class="directory">ld</filename> 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 will see how this
|
|
|
preparation is used later on in the chapter.</para></listitem>
|
|
|
-</itemizedlist>
|
|
|
+</varlistentry>
|
|
|
+</variablelist>
|
|
|
|
|
|
|
|
|
<warning><para><emphasis>Do not yet remove</emphasis> the Binutils build and
|
|
@@ -120,7 +139,7 @@ further on in this chapter.</para></warning>
|
|
|
|
|
|
</sect2>
|
|
|
|
|
|
-<sect2><title/>
|
|
|
+<sect2 role="content"><title/>
|
|
|
<para>The details on this package are found in <xref linkend="contents-binutils"/>.</para>
|
|
|
</sect2>
|
|
|
|