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

systemd
Last change on this file since e869c0f 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
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
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
18  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
19  href="../../final-system/common/binutils.xml"
20  xpointer="xpointer(//*[@role='package'])"/>
21
22  <sect2 role="installation">
23    <title>Installation of Cross Binutils</title>
24
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
27    linker and assembler to determine which of their own features to
28    enable.</para>
29
30<!-- Branch update patch area
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'])"/>
38-->
39    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
40    href="../../final-system/common/binutils.xml"
41    xpointer="xpointer(//*[@os='g'])"/>
42
43    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
44    href="../../final-system/common/binutils.xml"
45    xpointer="xpointer(//*[@os='h'])"/>
46
47    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
48    href="../../final-system/common/binutils.xml"
49    xpointer="xpointer(//*[@os='i'])"/>
50
51<screen os="bc"><userinput>AR=ar AS=as ../binutils-&binutils-dir;/configure \
52    --prefix=/cross-tools --host=${CLFS_HOST} --target=${CLFS_TARGET} \
53    --with-sysroot=${CLFS} --with-lib-path=/tools/lib --disable-nls \
54    --disable-static --disable-multilib --enable-gold=yes --enable-plugins \
55    --enable-threads --disable-werror</userinput></screen>
56
57    <variablelist os="bd">
58      <title>The meaning of the new configure options:</title>
59
60      <varlistentry os="bd1">
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
69      <varlistentry os="bd2">
70        <term><parameter>--host=${CLFS_HOST}</parameter></term>
71        <listitem>
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>
75        </listitem>
76      </varlistentry>
77
78      <varlistentry os="bd3">
79        <term><parameter>--target=${CLFS_TARGET}</parameter></term>
80        <listitem>
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>
84        </listitem>
85      </varlistentry>
86
87      <varlistentry os="bd4">
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">
96        <term><parameter>--with-lib-path=/tools/lib</parameter></term>
97        <listitem>
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>
103        </listitem>
104      </varlistentry>
105
106      <varlistentry os="bd6">
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
114      <varlistentry os="bd7">
115        <term><parameter>--disable-multilib</parameter></term>
116        <listitem>
117          <para>This option disables the building of a multilib
118          capable Binutils.</para>
119        </listitem>
120      </varlistentry>
121
122      <varlistentry os="bd8">
123        <term><parameter>--disable-werror</parameter></term>
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>
129
130      <varlistentry os="bd10">
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
137      <varlistentry os="bd11">
138        <term><parameter>--enable-plugins</parameter></term>
139        <listitem>
140          <para>This option enables support for plugins.</para>
141        </listitem>
142      </varlistentry>
143
144      <varlistentry os="bd12">
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
151    </variablelist>
152
153    <para os="be">Compile the package:</para>
154
155<screen os="bf"><userinput>make</userinput></screen>
156
157    <para os="bh">Install the package:</para>
158
159<screen os="bi"><userinput>make install</userinput></screen>
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.