source: chapter06/binutils-pass2.xml@ bf8012e

multilib
Last change on this file since bf8012e was bf8012e, checked in by Thomas Trepl (Moody) <thomas@…>, 2 years ago

Automatic merge of trunk into multilib

  • Property mode set to 100644
File size: 3.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-tools-binutils-pass2" role="wrap">
9 <?dbhtml filename="binutils-pass2.html"?>
10
11 <sect1info condition="script">
12 <productname>binutils-pass2</productname>
13 <productnumber>&binutils-version;</productnumber>
14 <address>&binutils-url;</address>
15 </sect1info>
16
17 <title>Binutils-&binutils-version; - Pass 2</title>
18
19 <indexterm zone="ch-tools-binutils-pass2">
20 <primary sortas="a-Binutils">Binutils</primary>
21 <secondary>tools, pass 2</secondary>
22 </indexterm>
23
24 <sect2 role="package">
25 <title/>
26
27 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
28 href="../chapter08/binutils.xml"
29 xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
30
31 <segmentedlist>
32 <segtitle>&buildtime;</segtitle>
33 <segtitle>&diskspace;</segtitle>
34
35 <seglistitem>
36 <seg>&binutils-tmpp2-sbu;</seg>
37 <seg>&binutils-tmpp2-du;</seg>
38 </seglistitem>
39 </segmentedlist>
40
41 </sect2>
42
43 <sect2 role="installation">
44 <title>Installation of Binutils</title>
45
46 <!-- Don't remove this until Binutils upstream updates the libtool
47 copy. On some host distros the issue doesn't show up. -->
48 <para>Binutils ships an outdated libtool copy in the tarball. It lacks
49 sysroot support so the produced binaries will be mistakenly linked to
50 libraries from the host distro. Workaround this issue:</para>
51
52<screen><userinput remap="pre">sed '6009s/$add_dir//' -i ltmain.sh</userinput></screen>
53
54 <para>Create a separate build directory again:</para>
55
56<screen><userinput remap="pre">mkdir -v build
57cd build</userinput></screen>
58
59 <para>Prepare Binutils for compilation:</para>
60
61<screen arch="default"><userinput remap="configure">../configure \
62 --prefix=/usr \
63 --build=$(../config.guess) \
64 --host=$LFS_TGT \
65 --disable-nls \
66 --enable-shared \
67 --disable-werror \
68 --enable-64-bit-bfd</userinput></screen>
69<screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure">../configure \
70 --prefix=/usr \
71 --build=$(../config.guess) \
72 --host=$LFS_TGT \
73 --disable-nls \
74 --enable-shared \
75 --disable-werror \
76 --enable-64-bit-bfd \
77 --enable-multilib</userinput></screen>
78
79 <variablelist>
80 <title>The meaning of the new configure options:</title>
81
82 <varlistentry>
83 <term><parameter>--enable-shared</parameter></term>
84 <listitem>
85 <para>Builds <filename
86 class="libraryfile">libbfd</filename> as a shared library.</para>
87 </listitem>
88 </varlistentry>
89
90
91 <varlistentry>
92 <term><parameter>--enable-64-bit-bfd</parameter></term>
93 <listitem>
94 <para>Enables 64-bit support (on hosts with narrower word sizes).
95 May not be needed on 64-bit systems, but does no harm.</para>
96 </listitem>
97 </varlistentry>
98
99 <varlistentry arch="ml_32,ml_x32,ml_all">
100 <term><parameter>--enable-multilib</parameter></term>
101 <listitem>
102 <para>Enables multilib support in bintutils.</para>
103 </listitem>
104 </varlistentry>
105
106 </variablelist>
107
108 <para>Compile the package:</para>
109
110<screen><userinput remap="make">make</userinput></screen>
111
112 <para>Install the package:</para>
113
114<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
115
116 </sect2>
117
118 <sect2 role="content">
119 <title/>
120
121 <para>Details on this package are located in
122 <xref linkend="contents-binutils" role="."/></para>
123
124 </sect2>
125
126</sect1>
Note: See TracBrowser for help on using the repository browser.