source: clfs-sysroot/BOOK/final-system/common/man.xml @ 586feb7

Last change on this file since 586feb7 was 586feb7, checked in by Joe Ciccone <jciccone@…>, 16 years ago

Updated the bootscripts package and make LFS to CLFS updates.

  • Property mode set to 100644
File size: 7.7 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3  "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4  <!ENTITY % general-entities SYSTEM "../../general.ent">
5  %general-entities;
6]>
7
8<sect1 id="ch-system-man" role="wrap">
9  <?dbhtml filename="man.html"?>
10
11  <title>Man-&man-version;</title>
12
13  <indexterm zone="ch-system-man">
14    <primary sortas="a-Man">Man</primary>
15  </indexterm>
16
17  <sect2 role="package">
18    <title/>
19
20    <para>The Man package contains programs for finding and viewing man
21    pages.</para>
22
23  </sect2>
24
25  <sect2 role="installation">
26    <title>Installation of Man</title>
27
28    <para os="a">A few adjustments need to be made to the sources of Man.</para>
29
30    <para os="b">First, a <command>sed</command> substitution is
31    needed to add the <option>-R</option> switch to the
32    <envar>PAGER</envar> variable so that escape sequences are
33    properly handled by Less:</para>
34
35<screen os="c"><userinput>cp configure{,.orig}
36sed 's@-is@&amp;R@g' configure.orig &gt; configure</userinput></screen>
37
38    <para os="d">Another <command>sed</command> substitution comments out the
39    <quote>MANPATH /usr/man</quote> line in the <filename>man.conf</filename>
40    file to prevent redundant results when using programs such as
41    <command>whatis</command>:</para>
42
43<screen os="e"><userinput>cp src/man.conf.in{,.orig}
44sed 's@MANPATH./usr/man@#&amp;@g' src/man.conf.in.orig &gt; src/man.conf.in</userinput></screen>
45
46    <para os="f">Finally, correct a syntax error in the
47    <command>makewhatis</command> script:</para>
48
49<screen os="g"><userinput>cp src/makewhatis.sh{,.orig}
50sed 's@)) |@) |@' src/makewhatis.sh.orig &gt; src/makewhatis.sh</userinput></screen>
51
52    <para os="h">Prepare Man for compilation:</para>
53
54<screen os="i"><userinput>./configure -confdir=/etc</userinput></screen>
55
56    <variablelist os="j">
57      <title>The meaning of the configure options:</title>
58
59      <varlistentry>
60      <term><parameter>-confdir=/etc</parameter></term>
61      <listitem>
62        <para>This tells the <command>man</command> program to look for the
63        <filename>man.conf</filename> configuration file in the <filename
64        class="directory">/etc</filename> directory.</para>
65      </listitem>
66      </varlistentry>
67    </variablelist>
68
69    <para os="k">Build makemsg using the hosts gcc. It is executed during the build</para>
70
71<screen os="l"><userinput>gcc src/makemsg.c -o src/makemsg</userinput></screen>
72
73    <para os="m">Compile the package:</para>
74
75<screen os="n"><userinput>make</userinput></screen>
76
77    <para os="o">Install the package:</para>
78
79<screen os="p"><userinput>make DESTDIR=${CLFS} install</userinput></screen>
80
81    <note os="q">
82      <para>If you will be working on a terminal that does not support
83      text attributes such as color and bold, you can disable Select
84      Graphic Rendition (SGR) escape sequences by editing the
85      <filename>man.conf</filename> file and adding the <option>-c</option>
86      option to the <envar>NROFF</envar> variable. If you use multiple
87      terminal types for one computer it may be better to selectively add
88      the <envar>GROFF_NO_SGR</envar> environment variable for the terminals
89      that do not support SGR.</para>
90    </note>
91
92    <para os="r">If the character set of the locale uses 8-bit characters, search
93    for the line beginning with <quote>NROFF</quote> in
94    <filename>/etc/man.conf</filename>, and verify that it matches the
95    following:</para>
96
97<screen os="s">NROFF /usr/bin/nroff -Tlatin1 -mandoc</screen>
98
99    <para os="t">Note that <quote>latin1</quote> should be used even if it is not
100    the character set of the locale. The reason is that, according to the
101    specification, <command>groff</command> has no means of typesetting
102    characters outside International Organization for Standards (ISO) 8859-1
103    without some strange escape codes. When formatting man pages,
104    <command>groff</command> thinks that they are in the ISO 8859-1 encoding
105    and this <parameter>-Tlatin1</parameter> switch tells
106    <command>groff</command> to use the same encoding for output. Since
107    <command>groff</command> does no recoding of input characters, the f
108    ormatted result is really in the same encoding as input, and therefore
109    it is usable as the input for a pager.</para>
110
111    <para os="u">This does not solve the problem of a non-working
112    <command>man2dvi</command> program for localized man pages in
113    non-ISO 8859-1 locales. Also, it does not work with multibyte
114    character sets. The first problem does not currently have a solution.
115    The second issue is not of concern because the LFS installation does
116    not support multibyte character sets.</para>
117
118    <para os="v">Additional information with regards to the compression of
119    man and info pages can be found in the BLFS book at
120    <ulink url="&blfs-root;view/cvs/postlfs/compressdoc.html"/>.</para>
121
122  </sect2>
123
124  <sect2 id="contents-man" role="content">
125    <title>Contents of Man</title>
126
127    <segmentedlist>
128      <segtitle>Installed programs</segtitle>
129
130      <seglistitem>
131        <seg>apropos, makewhatis, man, man2dvi, man2html, and whatis</seg>
132      </seglistitem>
133    </segmentedlist>
134
135    <variablelist>
136      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
137      <?dbfo list-presentation="list"?>
138      <?dbhtml list-presentation="table"?>
139
140      <varlistentry id="apropos">
141        <term><command>apropos</command></term>
142        <listitem>
143          <para>Searches the <command>whatis</command> database and
144          displays the short descriptions of system commands that contain
145          a given string</para>
146          <indexterm zone="ch-system-man apropos">
147            <primary sortas="b-apropos">apropos</primary>
148          </indexterm>
149        </listitem>
150      </varlistentry>
151
152      <varlistentry id="makewhatis">
153        <term><command>makewhatis</command></term>
154        <listitem>
155          <para>Builds the <command>whatis</command> database; it reads all
156          the man pages in the <envar>MANPATH</envar> and writes the name
157          and a short description in the <command>whatis</command> database
158          for each page</para>
159          <indexterm zone="ch-system-man makewhatis">
160            <primary sortas="b-makewhatis">makewhatis</primary>
161          </indexterm>
162        </listitem>
163      </varlistentry>
164
165      <varlistentry id="man">
166        <term><command>man</command></term>
167        <listitem>
168          <para>Formats and displays the requested on-line man page</para>
169          <indexterm zone="ch-system-man man">
170            <primary sortas="b-man">man</primary>
171          </indexterm>
172        </listitem>
173      </varlistentry>
174
175      <varlistentry id="man2dvi">
176        <term><command>man2dvi</command></term>
177        <listitem>
178          <para>Converts a man page into dvi format</para>
179          <indexterm zone="ch-system-man man2dvi">
180            <primary sortas="b-man2dvi">man2dvi</primary>
181          </indexterm>
182        </listitem>
183      </varlistentry>
184
185      <varlistentry id="man2html">
186        <term><command>man2html</command></term>
187        <listitem>
188          <para>Converts a man page into HTML</para>
189          <indexterm zone="ch-system-man man2html">
190            <primary sortas="b-man2html">man2html</primary>
191          </indexterm>
192        </listitem>
193      </varlistentry>
194
195      <varlistentry id="whatis">
196        <term><command>whatis</command></term>
197        <listitem>
198          <para>Searches the <command>whatis</command> database and
199          displays the short descriptions of system commands that
200          contain the given keyword as a separate word</para>
201          <indexterm zone="ch-system-man whatis">
202            <primary sortas="b-whatis">whatis</primary>
203          </indexterm>
204        </listitem>
205      </varlistentry>
206
207    </variablelist>
208
209  </sect2>
210
211</sect1>
Note: See TracBrowser for help on using the repository browser.