aboutsummaryrefslogtreecommitdiffstats
path: root/chapter06/man.xml
blob: 2594c8936e6ccf9af13cf1de57ae776910a881a0 (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
72
73
74
75
76
77
78
79
<sect1 id="ch-system-man" xreflabel="Man">
<title>Installing Man-&man-version;</title>
<?dbhtml filename="man.html" dir="chapter06"?>

<para>The Man package contains programs for finding and viewing manual pages.</para>

<screen>&buildtime; &man-time;
&diskspace; &man-compsize;</screen>

&aa-man-down;
&aa-man-dep;

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

<sect2>
<title>Installation of Man</title>

<para>We'll make three adjustments to the sources of Man.</para>

<para>The first is a patch which allows Man to work better with recent releases
of Groff. In particular, man pages will now display using the full terminal
width instead of being limited to 80 characters:</para>

<screen><userinput>patch -Np1 -i ../&man-80cols-patch;</userinput></screen>

<para>The second is a sed substitution to add the <emphasis>-R</emphasis>
switch to the <emphasis>PAGER</emphasis> variable so that escape sequences are
properly handled by Less:</para>

<screen><userinput>sed -i 's/-is/&amp;R/' configure</userinput></screen>

<para>The third is also a sed substitution to comment out the "MANPATH
/usr/man" line in the <filename>man.conf</filename> file to prevent redundant
results when using programs such as <userinput>whatis</userinput>:</para>

<screen><userinput>sed -i 's%MANPATH./usr/man%#&amp;%' src/man.conf.in</userinput></screen>
 
<para>Now prepare Man for compilation:</para>

<screen><userinput>./configure -default -confdir=/etc</userinput></screen>

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

<itemizedlist>
<listitem><para><userinput>-default</userinput>: This tells the configure script
to select a sensible set of default options. For example: only English man
pages, no message catalogs, man not suid, handle compressed man pages, compress
cat pages, create cat pages whenever the appropriate directory exists, follow
FHS by putting cat pages under /var/cache/man provided that that directory
exists.</para></listitem>

<listitem><para><userinput>-confdir=/etc</userinput>: This tells the
<userinput>man</userinput> program to look for the <filename>man.conf</filename>
configuration file in the <filename>/etc</filename> directory.</para></listitem>
</itemizedlist>

<para>Compile the package:</para>

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

<para>And install it:</para>

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

<note><para>If you wish to disable SGR escape sequences, you should
edit the man.conf file and add the <userinput>-c</userinput> argument
to nroff.</para></note>

<para>You may want to also take a look at the BLFS page at
<ulink url="&blfs-root;view/cvs/postlfs/compressdoc.html"/> which deals with
formatting and compression issues for man pages.</para>

</sect2>

&aa-man-shortdesc;
&aa-man-desc;

</sect1>