source: chapter06/binutils-inst.xml@ 0bb2989

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 6.0 6.1 6.1.1 6.3 6.4 6.5 6.6 6.7 6.8 7.0 7.1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk v5_0 v5_1 v5_1_1 xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since 0bb2989 was 297d8ee0, checked in by Greg Schafer <greg@…>, 21 years ago

More toolchain textual adjustments.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2866 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 2.1 KB
Line 
1<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
2
3<sect2><title>Installation of Binutils</title>
4
5<note><para>The test suite for Binutils in this section is considered
6<emphasis>critical</emphasis>. Do not skip it under any circumstances.</para>
7</note>
8
9<para>This package is known to behave badly when you have changed its
10default optimization flags (including the -march and -mcpu options).
11Therefore, if you have defined any environment variables that override
12default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting
13or modifying them when building Binutils.</para>
14
15<para>The Binutils documentation recommends building Binutils outside of the
16source directory in a dedicated build directory:</para>
17
18<para><screen><userinput>mkdir ../binutils-build
19cd ../binutils-build</userinput></screen></para>
20
21<para>Now prepare Binutils for compilation:</para>
22
23<para><screen><userinput>../binutils-&binutils-version;/configure \
24&nbsp;&nbsp;&nbsp;&nbsp;--prefix=/usr --enable-shared</userinput></screen></para>
25
26<para>Compile the package:</para>
27
28<para><screen><userinput>make tooldir=/usr</userinput></screen></para>
29
30<para>Normally, the <emphasis>tooldir</emphasis> (the directory where the
31executables end up) is set to $(exec_prefix)/$(target_alias), which expands
32into, for example, <filename>/usr/i686-pc-linux-gnu</filename>. Since we only
33build for our own system, we don't need this target specific directory in
34<filename>/usr</filename>. That setup would be used if the system was used to
35cross-compile (for example compiling a package on an Intel machine that
36generates code that can be executed on PowerPC machines).</para>
37
38<para>Test the results:</para>
39
40<para><screen><userinput>make check</userinput></screen></para>
41
42<para>Install the package:</para>
43
44<para><screen><userinput>make tooldir=/usr install</userinput></screen></para>
45
46<para>Install the <emphasis>libiberty</emphasis> header file that is needed by
47some packages:</para>
48
49<para><screen><userinput>cp ../binutils-&binutils-version;/include/libiberty.h /usr/include</userinput></screen></para>
50
51</sect2>
52
Note: See TracBrowser for help on using the repository browser.