10.55. Man-1.6e

The Man package contains programs for finding and viewing man pages.

10.55.1. Installation of Man

A few adjustments need to be made to the sources of Man.

First, a sed substitution is needed to add the -R switch to the PAGER variable so that escape sequences are properly handled by Less:

sed -i 's@-is@&R@g' configure

Another couple of sed substitutions comment out the “MANPATH /usr/man” and “MANPATH /usr/local/man” lines in the man.conf file to prevent redundant results when using programs such as whatis:

sed -i 's@MANPATH./usr/man@#&@g' src/man.conf.in
sed -i 's@MANPATH./usr/local/man@#&@g' src/man.conf.in

Prepare Man for compilation:

CC="gcc ${BUILD64}" ./configure -confdir=/etc

The meaning of the configure options:

-confdir=/etc

This tells the man program to look for the man.conf configuration file in the /etc directory.

Compile the package:

make

This package does not come with a test suite.

Install the package:

make install
[Note]

Note

If you will be working on a terminal that does not support text attributes such as color and bold, you can disable Select Graphic Rendition (SGR) escape sequences by editing the man.conf file and adding the -c option to the NROFF variable. If you use multiple terminal types for one computer it may be better to selectively add the GROFF_NO_SGR environment variable for the terminals that do not support SGR.

If the character set of the locale uses 8-bit characters, search for the line beginning with “NROFF” in /etc/man.conf, and verify that it matches the following:

NROFF /usr/bin/nroff -Tlatin1 -mandoc

Note that “latin1” should be used even if it is not the character set of the locale. The reason is that, according to the specification, groff has no means of typesetting characters outside International Organization for Standards (ISO) 8859-1 without some strange escape codes. When formatting man pages, groff thinks that they are in the ISO 8859-1 encoding and this -Tlatin1 switch tells groff to use the same encoding for output. Since groff does no recoding of input characters, the f ormatted result is really in the same encoding as input, and therefore it is usable as the input for a pager.

This does not solve the problem of a non-working man2dvi program for localized man pages in non-ISO 8859-1 locales. Also, it does not work with multibyte character sets. The first problem does not currently have a solution. The second issue is not of concern because the CLFS installation does not support multibyte character sets.

Additional information with regards to the compression of man and info pages can be found in the BLFS book at http://www.linuxfromscratch.org/blfs/view/svn/postlfs/compressdoc.html.

10.55.2. Contents of Man

Installed programs: apropos, makewhatis, man, man2dvi, man2html, and whatis

Short Descriptions

apropos

Searches the whatis database and displays the short descriptions of system commands that contain a given string

makewhatis

Builds the whatis database; it reads all the man pages in the MANPATH and writes the name and a short description in the whatis database for each page

man

Formats and displays the requested on-line man page

man2dvi

Converts a man page into dvi format

man2html

Converts a man page into HTML

whatis

Searches the whatis database and displays the short descriptions of system commands that contain the given keyword as a separate word