source: BOOK/final-system/common/man.xml @ 7c63c926

clfs-1.2clfs-2.1clfs-3.0.0-systemdclfs-3.0.0-sysvinitsystemdsysvinit
Last change on this file since 7c63c926 was 7c63c926, checked in by Jim Gifford <clfs@…>, 18 years ago

r1123@server (orig r1121): chris | 2006-02-01 00:33:35 -0800
Added a fix for a problem with makewhatis

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