aboutsummaryrefslogtreecommitdiffstats
path: root/chapter05/diffutils-inst.xml
blob: c67b41d1a5554c5292ce149018a5282191e6c112 (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
<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>

<sect2>
<title>Installation of Diffutils</title>

<para>Prepare Diffutils to be compiled:</para>

<para><screen><userinput>LDFLAGS="-static" CPPFLAGS=-Dre_max_failures=re_max_failures2 \
&nbsp;&nbsp;&nbsp;&nbsp;./configure --prefix=$LFS/static --disable-nls</userinput></screen></para>

<para>The meaning of the configure options are:</para>

<itemizedlist>
<listitem><para><userinput>LDFLAGS="-static"</userinput>: This is the most
common way to tell a package that all programs should be statically linked.
This way the <emphasis>LDFLAGS</emphasis> environment variable is set, but
only in the subshell that the <filename>configure</filename> script runs
in. When <userinput>configure</userinput> has done its job, the
<emphasis>LDFLAGS</emphasis> environment variable won't exist anymore
and the <filename>Makefile</filename> files contain will contain this
variable locally.</para></listitem>

<listitem><para><userinput>CPPFLAGS=-Dre_max_failures=re_max_failures2</userinput>: The <emphasis>CPPFLAGS</emphasis> variable is a variable that's read by
the cpp program (C PreProcessor). The value of this variable tells the
preprocessor to replace every instance of <emphasis>re_max_failures</emphasis>
it finds with <emphasis>re_max_failures2</emphasis> before handing the source
file to the compiler itself for compilation. This package has problems
linking statically on systems that run an older Glibc version and this
construction fixes that problem.</para></listitem>
</itemizedlist>

<para>Continue with compiling the package:</para>

<para><screen><userinput>make</userinput></screen></para>

<para>And finish off installing the package:</para>

<para><screen><userinput>make install</userinput></screen></para>

</sect2>