blob: 5fde85f3b018ec3d343ae7b85fca70a1a43cd17c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
<sect2><title> </title><para> </para></sect2>
<sect2>
<title>Installation of Glibc</title>
<para>At the beginning of this chapter you installed Glibc and applied a
patch to it. Part of this patch was undoing some changes to make static
binaries compiled against Glibc-2.2 work. However, this is not what the
Glibc developers intended and we don't need to keep this modified Glibc
around. So we reinstall Glibc here to remove this patch.</para>
<para>A second reason to install Glibc again is because it's considered
cleaner. The first Glibc was installed using programs compiled on your host
distribution which sometimes has the effect of tainting Glibc. While this
isn't a problem with the other packages compiled early in this chapter, for
Glibc we want to be sure it's 100% OK (although feel free to reinstall
other packages at this point so you can say you compiled an LFS system with
LFS. Much like GCC's bootstrap installation method).</para>
<para>We'll also install the linuxthreads man pages here. As you may
recall, during the first installation of Glibc this wasn't possible because
Perl wasn't installed yet. Now that everything needed to install the Glibc
linuxthreads man pages is present as well, we will install those too.</para>
<para>Before starting to install Glibc, you must cd into the
glibc-&glibc-version; directory and unpack glibc-linuxthreads inside
the glibc-&glibc-version; directory, not in /usr/src as you normally
would do.</para>
<para>This package is known to behave badly when you have changed its
default optimization flags (including the -march and -mcpu options).
Therefore, if you have defined any environment variables that override
default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting
or modifying them when building Glibc. You have been warned.</para>
<para>Basically, compiling Glibc in any other way than the book suggests
is putting your system at very high risk.</para>
<para>It is recommended by the Glibc installation documentation to build
Glibc outside of the source tree. Create the build directory:</para>
<para><screen><userinput>mkdir ../glibc-build &&
cd ../glibc-build</userinput></screen></para>
<para>Next, prepare Glibc to be compiled:</para>
<para><screen><userinput>../glibc-&glibc-version;/configure --prefix=/usr --disable-profile \
--enable-add-ons --libexecdir=/usr/bin</userinput></screen></para>
<para>Continue with compiling the package:</para>
<para><screen><userinput>make</userinput></screen></para>
<para>Begin package installation:</para>
<para><screen><userinput>make install</userinput></screen></para>
<para>Build the linuxthreads man pages:</para>
<para><screen><userinput>make -C ../glibc-&glibc-version;/linuxthreads/man</userinput></screen></para>
<para>Install the man pages:</para>
<para><screen><userinput>make -C ../glibc-&glibc-version;/linuxthreads/man install</userinput></screen></para>
<para>Complete package installation by relaunching bash:</para>
<para><screen><userinput>exec /bin/bash --login</userinput></screen></para>
</sect2>
|