source: BOOK/cross-tools/common/binutils.xml @ c636dee

systemd
Last change on this file since c636dee was e869c0f, checked in by William Harrington <kb0iic@…>, 9 years ago

Add binutils gold linker options to all books.

  • Property mode set to 100644
File size: 5.8 KB
RevLine 
[3f8be484]1<?xml version="1.0" encoding="ISO-8859-1"?>
[aa18ac0]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[3f8be484]4  <!ENTITY % general-entities SYSTEM "../../general.ent">
5  %general-entities;
6]>
7
8<sect1 id="ch-cross-tools-binutils" role="wrap">
9  <?dbhtml filename="binutils.html"?>
10
11  <title>Cross Binutils-&binutils-version;</title>
12
13  <indexterm zone="ch-cross-tools-binutils">
14    <primary sortas="a-Binutils">Binutils</primary>
15    <secondary>cross tools</secondary>
16  </indexterm>
17
[dabbced]18  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
[cf66ceae]19  href="../../final-system/common/binutils.xml"
20  xpointer="xpointer(//*[@role='package'])"/>
[3f8be484]21
22  <sect2 role="installation">
23    <title>Installation of Cross Binutils</title>
24
[292caee]25    <para os="da">It is important that Binutils be compiled before Glibc and
26    GCC because both Glibc and GCC perform various tests on the available
[eba8490]27    linker and assembler to determine which of their own features to
28    enable.</para>
29
[e61fedb]30<!-- Branch update patch area
[3e0fdeb]31    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
32    href="../../final-system/common/binutils.xml"
33    xpointer="xpointer(//*[@os='p1'])"/>
34
35    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
36    href="../../final-system/common/binutils.xml"
37    xpointer="xpointer(//*[@os='p2'])"/>
[e61fedb]38-->
[b8a33e3]39    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
40    href="../../final-system/common/binutils.xml"
[3f8be484]41    xpointer="xpointer(//*[@os='g'])"/>
42
[dabbced]43    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
[3f8be484]44    href="../../final-system/common/binutils.xml"
45    xpointer="xpointer(//*[@os='h'])"/>
46
[dabbced]47    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
[3f8be484]48    href="../../final-system/common/binutils.xml"
49    xpointer="xpointer(//*[@os='i'])"/>
50
[40ce7b8]51<screen os="bc"><userinput>AR=ar AS=as ../binutils-&binutils-dir;/configure \
[04c3a53]52    --prefix=/cross-tools --host=${CLFS_HOST} --target=${CLFS_TARGET} \
53    --with-sysroot=${CLFS} --with-lib-path=/tools/lib --disable-nls \
[d2e3f96]54    --disable-static --disable-multilib --enable-gold=yes --enable-plugins \
[efdef34]55    --enable-threads --disable-werror</userinput></screen>
[3f8be484]56
57    <variablelist os="bd">
[5cbf8bc]58      <title>The meaning of the new configure options:</title>
[3f8be484]59
[5cbf8bc]60      <varlistentry os="bd1">
[bd27efe]61        <term><parameter>AR=ar AS=as</parameter></term>
62        <listitem>
63          <para>This prevents Binutils from compiling with ${CLFS_HOST}-ar
64           and ${CLFS_HOST}-as as they are provided by this package and therefore
65           not installed yet.</para>
66        </listitem>
67      </varlistentry>
68
[3f8be484]69      <varlistentry os="bd2">
[bc2e3fa]70        <term><parameter>--host=${CLFS_HOST}</parameter></term>
[3f8be484]71        <listitem>
[fd6e290]72          <para>When used with <option>--target</option>, this creates a
73          cross-architecture executable which creates files for
74          ${CLFS_TARGET} but runs on ${CLFS_HOST}.</para>
[3f8be484]75        </listitem>
76      </varlistentry>
77
78      <varlistentry os="bd3">
[bc2e3fa]79        <term><parameter>--target=${CLFS_TARGET}</parameter></term>
[3f8be484]80        <listitem>
[fd6e290]81          <para>When used with <option>--host</option>, this creates a
82          cross-architecture executable that creates files for
83          ${CLFS_TARGET} but runs on ${CLFS_HOST}.</para>
[3f8be484]84        </listitem>
85      </varlistentry>
86
87      <varlistentry os="bd4">
[395af5a]88        <term><parameter>--with-sysroot=${CLFS}</parameter></term>
89        <listitem>
90          <para>Tells configure to build a linker that uses ${CLFS} as its
91          root directory for its search paths.</para>
92        </listitem>
93      </varlistentry>
94
95      <varlistentry os="bd5">
[bc2e3fa]96        <term><parameter>--with-lib-path=/tools/lib</parameter></term>
[3f8be484]97        <listitem>
[bc2e3fa]98          <para>This tells the configure script to specify the library
99          search path during the compilation of Binutils, resulting in
100          <filename class="directory">/tools/lib</filename> being passed
101          to the linker. This prevents the linker from searching through
102          library directories on the host.</para>
[3f8be484]103        </listitem>
104      </varlistentry>
105
[395af5a]106      <varlistentry os="bd6">
[3f8be484]107        <term><parameter>--disable-nls</parameter></term>
108        <listitem>
109          <para>This disables internationalization as i18n is not needed for the
110          cross-compile tools.</para>
111        </listitem>
112      </varlistentry>
113
[395af5a]114      <varlistentry os="bd7">
[ed8de1a]115        <term><parameter>--disable-multilib</parameter></term>
116        <listitem>
[8659630]117          <para>This option disables the building of a multilib
[3d11ab9]118          capable Binutils.</para>
[3f8be484]119        </listitem>
120      </varlistentry>
121
[395af5a]122      <varlistentry os="bd8">
[543ed17]123        <term><parameter>--disable-werror</parameter></term>
[0d90041]124        <listitem>
125          <para>This prevents the build from stopping in the event that there
126          are warnings from the host's compiler.</para>
127        </listitem>
128      </varlistentry>
[543ed17]129
[e869c0f]130      <varlistentry os="bd10">
[e4517330]131        <term><parameter>--enable-gold=yes</parameter></term>
132        <listitem>
133          <para>This option enables the building of the gold linker.</para>
134        </listitem>
135      </varlistentry>
136
[e869c0f]137      <varlistentry os="bd11">
[e4517330]138        <term><parameter>--enable-plugins</parameter></term>
139        <listitem>
140          <para>This option enables support for plugins.</para>
141        </listitem>
142      </varlistentry>
143
[e869c0f]144      <varlistentry os="bd12">
[e4517330]145        <term><parameter>--enable-threads</parameter></term>
146        <listitem>
147          <para>This option enables multi-threaded linking for the gold linker.</para>
148        </listitem>
149      </varlistentry>
150
[3f8be484]151    </variablelist>
152
153    <para os="be">Compile the package:</para>
154
[3eaa352a]155<screen os="bf"><userinput>make</userinput></screen>
[3f8be484]156
[ed8de1a]157    <para os="bh">Install the package:</para>
[3f8be484]158
[ed8de1a]159<screen os="bi"><userinput>make install</userinput></screen>
[3f8be484]160
161  </sect2>
162
163  <sect2 role="content">
164    <title/>
165
166    <para>Details on this package are located in <xref
167    linkend="contents-binutils" role="."/></para>
168
169  </sect2>
170
171</sect1>
Note: See TracBrowser for help on using the repository browser.