source: chapter06/binutils-pass2.xml@ 8bde866

multilib
Last change on this file since 8bde866 was 8bde866, checked in by Thomas Trepl (Moody) <thomas@…>, 20 months ago

Fix binutils instructions

  • 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 --enable-gprofng=no \
68 --disable-werror \
69 --enable-64-bit-bfd</userinput></screen>
70<screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure">../configure \
71 --prefix=/usr \
72 --build=$(../config.guess) \
73 --host=$LFS_TGT \
74 --disable-nls \
75 --enable-shared \
76 --enable-gprofng=no \
77 --disable-werror \
78 --enable-64-bit-bfd \
79 --enable-multilib</userinput></screen>
80
81 <variablelist>
82 <title>The meaning of the new configure options:</title>
83
84 <varlistentry>
85 <term><parameter>--enable-shared</parameter></term>
86 <listitem>
87 <para>Builds <filename
88 class="libraryfile">libbfd</filename> as a shared library.</para>
89 </listitem>
90 </varlistentry>
91
92
93 <varlistentry>
94 <term><parameter>--enable-64-bit-bfd</parameter></term>
95 <listitem>
96 <para>Enables 64-bit support (on hosts with narrower word sizes).
97 May not be needed on 64-bit systems, but does no harm.</para>
98 </listitem>
99 </varlistentry>
100
101 <varlistentry arch="ml_32,ml_x32,ml_all">
102 <term><parameter>--enable-multilib</parameter></term>
103 <listitem>
104 <para>Enables multilib support in bintutils.</para>
105 </listitem>
106 </varlistentry>
107
108 </variablelist>
109
110 <para>Compile the package:</para>
111
112<screen><userinput remap="make">make</userinput></screen>
113
114 <para>Install the package:</para>
115
116<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
117
118 </sect2>
119
120 <sect2 role="content">
121 <title/>
122
123 <para>Details on this package are located in
124 <xref linkend="contents-binutils" role="."/></para>
125
126 </sect2>
127
128</sect1>
Note: See TracBrowser for help on using the repository browser.