aboutsummaryrefslogtreecommitdiffstats
path: root/chapter06/e2fsprogs.xml
blob: d9ff51cb96851c3076f290c93724155d413c50b6 (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
<sect1 id="ch06-e2fsprogs">
<title>Installing E2fsprogs-&e2fsprogs-version;</title>
<?dbhtml filename="e2fsprogs.html" dir="chapter06"?>

<screen>Estimated build time:           &e2fsprogs-time;
Estimated required disk space:  &e2fsprogs-compsize;</screen>

&aa-e2fsprogs-shortdesc;
&aa-e2fsprogs-dep;

<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>

<sect2>
<title>Installation of E2fsprogs</title>

<para>It is recommended to build E2fsprogs outside of the
source tree:</para>

<screen><userinput>mkdir ../e2fsprogs-build
cd ../e2fsprogs-build</userinput></screen>

<para>Prepare E2fsprogs for compilation:</para>

<screen><userinput>../e2fsprogs-&e2fsprogs-version;/configure --prefix=/usr --with-root-prefix="" \
&nbsp;&nbsp;&nbsp;&nbsp;--enable-elf-shlibs</userinput></screen>

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

<itemizedlist>
<listitem><para><userinput>--with-root-prefix=""</userinput>: Certain
programs (such as the e2fsck program) are considered essential programs.
When, for example, <filename class="directory">/usr</filename> isn't
mounted, these essential program have to be available. They belong in
directories like <filename class="directory">/lib</filename> and
<filename class="directory">/sbin</filename>. If this option isn't passed
to E2fsprogs's configure, the programs are placed in the
<filename class="directory">/usr</filename> directory, which is not what we
want.</para></listitem>

<listitem><para><userinput>--enable-elf-shlibs</userinput>: This creates
the shared libraries which some programs in this package make use
of.</para></listitem>
</itemizedlist>

<para>Compile the package:</para>

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

<para>This package has a test suite available which can perform a number of
checks to ensure it built correctly.  Should you choose to run it, the 
following command will do so:</para>

<screen><userinput>make check</userinput></screen>

<para>Install most of the package:</para>

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

<para>And install also the shared libraries:</para>

<screen><userinput>make install-libs</userinput></screen>

</sect2>


</sect1>