Applied Bill Maltby's grammar patch. Changed $LFS to LFS where appropriate. Internal XML cleanup: removed double spacing where appropriate.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2138 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
Timothy Bauscher 2002-09-28 21:08:29 +00:00
parent f5cc1c171b
commit 2c094d60db
75 changed files with 230 additions and 227 deletions

View File

@ -11,7 +11,7 @@ ifnames</para></sect3>
<sect4><title>autoconf</title> <sect4><title>autoconf</title>
<para>autoconf is a tool for producing shell scripts that automatically <para>autoconf is a tool for producing shell scripts that automatically
configure software source code packages to adapt to many kinds of configure software source code packages to adapt to many kinds of
Unix-like systems. The configuration scripts produced by autoconf are Unix-like systems. The configuration scripts produced by autoconf are
independent of autoconf when they are run, so their users do not need to independent of autoconf when they are run, so their users do not need to
have autoconf.</para></sect4> have autoconf.</para></sect4>
@ -24,18 +24,18 @@ statements for configure to use.</para></sect4>
<sect4><title>autoreconf</title> <sect4><title>autoreconf</title>
<para>If there are a lot of autoconf-generated configure scripts, the <para>If there are a lot of autoconf-generated configure scripts, the
autoreconf program can save some work. It runs autoconf (and autoreconf program can save some work. It runs autoconf and
autoheader, where appropriate) repeatedly to remake the autoconf autoheader (where appropriate) repeatedly to remake the autoconf
configure scripts and configuration header templates in the directory configure scripts and configuration header templates in the directory
tree rooted at the current directory.</para></sect4> tree rooted at the current directory.</para></sect4>
<sect4><title>autoscan</title> <sect4><title>autoscan</title>
<para>The autoscan program can help to create a configure.in file for <para>The autoscan program can help to create a configure.in file for
a software package. autoscan examines source files in the directory a software package. autoscan examines the source files in a directory
tree rooted at a directory given as a command line argument, or the tree. If a directory is not specified on the command line, then the
current directory if none is given. It searches the source files for current working directory is used. The source files are searched for
common portability problems and creates a file configure.scan which common portability problems and a configure.scan file is created to
is a preliminary configure.in for that package.</para></sect4> serve as the preliminary configure.in for that package.</para></sect4>
<sect4><title>autoupdate</title> <sect4><title>autoupdate</title>
<para>The autoupdate program updates a configure.in file that calls <para>The autoupdate program updates a configure.in file that calls
@ -46,9 +46,9 @@ macro names.</para></sect4>
<para>ifnames can help when writing a configure.in for a software <para>ifnames can help when writing a configure.in for a software
package. It prints the identifiers that the package already uses in C package. It prints the identifiers that the package already uses in C
preprocessor conditionals. If a package has already been set up to preprocessor conditionals. If a package has already been set up to
have some portability, this program can help to figure out what its have some portability, this program can help to determine what configure
configure needs to check for. It may help fill in some gaps in a needs to check. It may fill in some gaps in a configure.in file generated
configure.in generated by autoscan.</para></sect4> by autoscan.</para></sect4>
</sect3> </sect3>

View File

@ -14,19 +14,19 @@ mdate-sh, missing, mkinstalldirs, py-compile, ylwrap</para></sect3>
<sect4><title>aclocal, aclocal-1.6</title> <sect4><title>aclocal, aclocal-1.6</title>
<para>automake includes a number of autoconf macros which can be used in <para>automake includes a number of autoconf macros which can be used in
packages; some of them are actually required by automake in certain packages, some of which are needed by automake in certain
situations. These macros must be defined in the aclocal.m4-file; situations. These macros must be defined in the aclocal.m4-file
otherwise they will not be seen by autoconf.</para> or they will not be seen by autoconf.</para>
<para>The aclocal program will automatically generate aclocal.m4 files <para>The aclocal program will automatically generate aclocal.m4 files
based on the contents of configure.in. This provides a convenient based on the contents of configure.in. This provides a convenient
way to get automake-provided macros, without having to search around. way to get automake-provided macros without having to search around.
Also, the aclocal mechanism is extensible for use Also, the aclocal mechanism is extensible for use
by other packages.</para></sect4> by other packages.</para></sect4>
<sect4><title>automake, automake-1.6</title> <sect4><title>automake, automake-1.6</title>
<para>To create all the Makefile.in's for a package, run the automake <para>To create all the Makefile.in's for a package, run the automake
program in the top level directory, with no arguments. automake will program in the top level directory, with no arguments. automake will
automatically find each appropriate Makefile.am (by scanning automatically find each appropriate Makefile.am (by scanning
configure.in) and generate the corresponding Makefile.in.</para></sect4> configure.in) and generate the corresponding Makefile.in.</para></sect4>

View File

@ -19,7 +19,7 @@ program.</para></sect4>
reports concerning bash in a standard format.</para></sect4> reports concerning bash in a standard format.</para></sect4>
<sect4><title>sh</title> <sect4><title>sh</title>
<para>sh is a symlink to the bash program. When invoked as sh, bash <para>sh is a symlink to the bash program. When invoked as sh, bash
tries to mimic the startup behavior of historical versions of sh as closely tries to mimic the startup behavior of historical versions of sh as closely
as possible, while conforming to the POSIX standard as as possible, while conforming to the POSIX standard as
well.</para></sect4> well.</para></sect4>

View File

@ -18,7 +18,7 @@ into a C file prog.v to be included in or linked with programs like boot
block installers.</para></sect4> block installers.</para></sect4>
<sect4><title>ld86</title> <sect4><title>ld86</title>
<para>ld86 understands only the object files produced by the as86 assembler, it <para>ld86 understands only the object files produced by the as86 assembler. It
can link them into either an impure or a can link them into either an impure or a
separate I&amp;D executable.</para></sect4> separate I&amp;D executable.</para></sect4>

View File

@ -11,14 +11,14 @@ ranlib, readelf, size, strings and strip</para></sect3>
<sect4><title>addr2line</title> <sect4><title>addr2line</title>
<para>addr2line translates program addresses into file names and line numbers. <para>addr2line translates program addresses into file names and line numbers.
Given an address and an executable, it uses the debugging information in Given an address and an executable, it uses the debugging information in
the executable to figure out which file name and line number are associated the executable to figure out which file name and line number are associated
with a given address.</para></sect4> with a given address.</para></sect4>
<sect4><title>ar</title> <sect4><title>ar</title>
<para>The ar program creates, modifies, and extracts from archives. An archive <para>The ar program creates, modifies, and extracts from archives. An archive
is a single file holding a collection of other files in a structure that makes is a single file holding a collection of other files in a structure that makes
it possible to retrieve the original individual files (called members of it possible to retrieve the original individual files (called members of
the archive).</para></sect4> the archive).</para></sect4>
<sect4><title>as</title> <sect4><title>as</title>
@ -32,7 +32,7 @@ the archive).</para></sect4>
<para>gprof displays call graph profile data.</para></sect4> <para>gprof displays call graph profile data.</para></sect4>
<sect4><title>ld</title> <sect4><title>ld</title>
<para>ld combines a number of object and archive files, relocates their data <para>ld combines a number of object and archive files, relocates their data
and ties up symbol references. Often the last step in building a new compiled and ties up symbol references. Often the last step in building a new compiled
program to run is a call to ld.</para></sect4> program to run is a call to ld.</para></sect4>
@ -53,7 +53,7 @@ programmers who just want their program to compile and work.</para></sect4>
<sect4><title>ranlib</title> <sect4><title>ranlib</title>
<para>ranlib generates an index to the contents of an archive, and stores it in <para>ranlib generates an index to the contents of an archive, and stores it in
the archive. The index lists each symbol defined by a member of an archive the archive. The index lists each symbol defined by an archive member
that is a relocatable object file.</para></sect4> that is a relocatable object file.</para></sect4>
<sect4><title>readelf</title> <sect4><title>readelf</title>
@ -65,8 +65,8 @@ object files in its argument list. By default, one line of output is
generated for each object file or each module in an archive.</para></sect4> generated for each object file or each module in an archive.</para></sect4>
<sect4><title>strings</title> <sect4><title>strings</title>
<para>For each file given, strings prints the printable character sequences <para>For each file given, strings prints the printable character sequences
that are at least 4 characters long (or the number specified with an that are at least 4 characters long (or the number specified with an
option to the program) and are followed by an unprintable character. By option to the program) and are followed by an unprintable character. By
default, it only prints the strings from the initialized and loaded default, it only prints the strings from the initialized and loaded
sections of object files. For other types of files, it prints the strings sections of object files. For other types of files, it prints the strings
@ -92,7 +92,7 @@ modified copies under different names.</para></sect4>
<sect4><title>libopcodes</title> <sect4><title>libopcodes</title>
<para>libopcodes is a native library for dealing with opcodes and is <para>libopcodes is a native library for dealing with opcodes and is
used in the course of building utilities such as objdump. Opcodes are used in the course of building utilities such as objdump. Opcodes are
actually "readable text" versions of instructions for the actually "readable text" versions of instructions for the
processor.</para></sect4> processor.</para></sect4>

View File

@ -15,7 +15,7 @@ Another Compiler Compiler. What is bison then? It is a program that
generates a program that analyzes the structure of a text file. Instead of generates a program that analyzes the structure of a text file. Instead of
writing the actual program a user specifies how things should be connected writing the actual program a user specifies how things should be connected
and with those rules a program is constructed that analyzes the and with those rules a program is constructed that analyzes the
text file. There are a lot of examples where structure is needed and text file. There are a lot of examples where structure is needed and
one of them is the calculator.</para> one of them is the calculator.</para>
<para>Given the string :</para> <para>Given the string :</para>
@ -39,7 +39,7 @@ to the compiler:</para>
multiplies 2 and 3. The result of that multiplication is remembered and multiplies 2 and 3. The result of that multiplication is remembered and
the next thing that the computer sees is the result of 2*3 and the the next thing that the computer sees is the result of 2*3 and the
number 1 which are joined by the add symbol. Adding 1 to the previous number 1 which are joined by the add symbol. Adding 1 to the previous
result makes 7. In calculating the most complex calculations can be result makes 7. In calculating, the most complex calculations can be
broken down in this tree format and the computer just starts at the broken down in this tree format and the computer just starts at the
bottom and works its way up to the top and comes with the correct bottom and works its way up to the top and comes with the correct
answer. Of course, bison isn't only used for calculators answer. Of course, bison isn't only used for calculators

View File

@ -26,9 +26,9 @@ bzip2 compressed files.</para></sect4>
<sect4><title>bzip2</title> <sect4><title>bzip2</title>
<para>bzip2 compresses files using the Burrows-Wheeler block sorting text <para>bzip2 compresses files using the Burrows-Wheeler block sorting text
compression algorithm, and Huffman coding. Compression is generally compression algorithm and Huffman coding. Compression is generally
considerably better than that achieved by more conventional LZ77/LZ78-based considerably better than that achieved by more conventional LZ77/LZ78-based
compressors, and approaches the performance of the PPM family of statistical compressors and approaches the performance of the PPM family of statistical
compressors.</para></sect4> compressors.</para></sect4>
<sect4><title>bzip2recover</title> <sect4><title>bzip2recover</title>
@ -36,12 +36,12 @@ compressors.</para></sect4>
<sect4><title>bzless</title> <sect4><title>bzless</title>
<para>bzless is a filter which allows examination of compressed <para>bzless is a filter which allows examination of compressed
or plain text files one screenful at a time on a soft-copy or plain text files, one screenful at a time on a soft-copy
terminal, like less.</para></sect4> terminal, like less.</para></sect4>
<sect4><title>bzmore</title> <sect4><title>bzmore</title>
<para>bzmore is a filter which allows examination of compressed <para>bzmore is a filter which allows examination of compressed
or plain text files one screenful at a time on a soft-copy or plain text files, one screenful at a time on a soft-copy
terminal, like more.</para></sect4> terminal, like more.</para></sect4>
</sect3> </sect3>
@ -52,7 +52,7 @@ libbz2.so.1.0.2) and libbz2.so.1.0.2</para>
<sect4><title>libbz2</title> <sect4><title>libbz2</title>
<para>libbz2 is the library for implementing lossless, block-sorting data <para>libbz2 is the library for implementing lossless, block-sorting data
compression using the Burrows-Wheeler algorithm.</para></sect4> compression, using the Burrows-Wheeler algorithm.</para></sect4>
</sect3> </sect3>

View File

@ -20,12 +20,12 @@ partition).</para></sect4>
system.</para></sect4> system.</para></sect4>
<sect4><title>compile_et</title> <sect4><title>compile_et</title>
<para>compile_et is used to convert a table listing error-code names <para>compile_et is used to convert a table, listing error-code names
and associated messages into a C source file suitable for use with the and associated messages, into a C source file that is suitable for use
com_err library.</para></sect4> with the com_err library.</para></sect4>
<sect4><title>debugfs</title> <sect4><title>debugfs</title>
<para>The debugfs program is a file system debugger. It can be used to examine <para>The debugfs program is a file system debugger. It can be used to examine
and change the state of an ext2 file system.</para></sect4> and change the state of an ext2 file system.</para></sect4>
<sect4><title>dumpe2fs</title> <sect4><title>dumpe2fs</title>
@ -33,11 +33,11 @@ and change the state of an ext2 file system.</para></sect4>
filesystem present on a specified device.</para></sect4> filesystem present on a specified device.</para></sect4>
<sect4><title>e2fsck and fsck.ext2</title> <sect4><title>e2fsck and fsck.ext2</title>
<para>e2fsck is used to check and optionally repair Linux second <para>e2fsck and fsck.ext2 are used to check, and optionally repair, Linux
extended filesystems. fsck.ext2 does the same as e2fsck.</para></sect4> second extended filesystems.</para></sect4>
<sect4><title>e2image</title> <sect4><title>e2image</title>
<para>e2image is used to save critical ext2 filesystem data to <para>e2image is used to save critical ext2 filesystem data to
a file.</para></sect4> a file.</para></sect4>
<sect4><title>e2label</title> <sect4><title>e2label</title>
@ -45,11 +45,11 @@ a file.</para></sect4>
filesystem located on the specified device.</para></sect4> filesystem located on the specified device.</para></sect4>
<sect4><title>fsck</title> <sect4><title>fsck</title>
<para>fsck is used to check and optionally repair a Linux <para>fsck is used to check, and optionally repair, a Linux file
file system.</para></sect4> system.</para></sect4>
<sect4><title>fsck.ext3</title> <sect4><title>fsck.ext3</title>
<para>fsck.ext3 is used to check and optionally repair a Linux ext3 <para>fsck.ext3 is used to check, and optionally repair, a Linux ext3
filesystems.</para></sect4> filesystems.</para></sect4>
<sect4><title>lsattr</title> <sect4><title>lsattr</title>
@ -58,7 +58,7 @@ file system.</para></sect4>
<sect4><title>mk_cmds</title> <sect4><title>mk_cmds</title>
<para>The mk_cmds utility takes a command table file as input and produces <para>The mk_cmds utility takes a command table file as input and produces
a C source file as output which is intended to be used with the subsystem a C source file as output, which is intended to be used with the subsystem
library, libss.</para></sect4> library, libss.</para></sect4>
<sect4><title>mke2fs and mkfs.ext2</title> <sect4><title>mke2fs and mkfs.ext2</title>
@ -84,8 +84,8 @@ filesystem.</para></sect4>
<sect4><title>uuidgen</title> <sect4><title>uuidgen</title>
<para>The uuidgen program creates a new universally unique identifier (UUID) <para>The uuidgen program creates a new universally unique identifier (UUID)
using the libuuid library. The new UUID can reasonably be considered unique using the libuuid library. The new UUID can reasonably be considered unique
among all UUIDs created on the local system, and among UUIDs created on other among all UUIDs created, on the local system and on other
systems in the past and in the future.</para></sect4> systems, in the past and in the future.</para></sect4>
</sect3> </sect3>

View File

@ -8,7 +8,7 @@
<sect3><title>Description</title> <sect3><title>Description</title>
<sect4><title>ed</title> <sect4><title>ed</title>
<para>ed is a line-oriented text editor. It is used to create, display, <para>ed is a line-oriented text editor. It is used to create, display,
modify and otherwise manipulate text files.</para></sect4> modify and otherwise manipulate text files.</para></sect4>
<sect4><title>red</title> <sect4><title>red</title>

View File

@ -9,8 +9,8 @@
<sect4><title>file</title> <sect4><title>file</title>
<para>file tests each specified file in an attempt to classify it. There are <para>file tests each specified file in an attempt to classify it. There are
three sets of tests, performed in this order: filesystem tests, three sets of tests, performed in this order: filesystem tests,
magic number tests, and language tests. The first test that succeeds magic number tests and language tests. The first test that succeeds
causes the file type to be printed.</para></sect4> causes the file type to be printed.</para></sect4>
</sect3> </sect3>

View File

@ -15,7 +15,7 @@ which can be either a group name or a numeric group ID.</para></sect4>
<sect4><title>chmod</title> <sect4><title>chmod</title>
<para>chmod changes the permissions of each given file according to mode, which <para>chmod changes the permissions of each given file according to mode, which
can be either a symbolic representation of changes to make, or an octal can be either a symbolic representation of changes to make or an octal
number representing the bit pattern for the new permissions.</para></sect4> number representing the bit pattern for the new permissions.</para></sect4>
<sect4><title>chown</title> <sect4><title>chown</title>
@ -38,20 +38,20 @@ available on all currently mounted filesystems is shown.</para></sect4>
<sect4><title>dir, ls and vdir</title> <sect4><title>dir, ls and vdir</title>
<para>dir and vdir are versions of ls with different default output formats. <para>dir and vdir are versions of ls with different default output formats.
These programs list each given file or directory name. Directory contents These programs list each given file or directory name. Directory contents
are sorted alphabetically. For ls, files are by default listed in columns, are sorted alphabetically. For ls, files are, by default, listed in columns
sorted vertically, if the standard output is a terminal; otherwise they sorted vertically if the standard output is a terminal; otherwise they
are listed one per line. For dir, files are by default listed in columns, are listed one per line. For dir, files are, by default, listed in columns
sorted vertically. For vdir, files are by default listed in sorted vertically. For vdir, files are, by default, listed in
long format.</para></sect4> long format.</para></sect4>
<sect4><title>dircolors</title> <sect4><title>dircolors</title>
<para>dircolors outputs commands to set the LS_COLOR environment variable. <para>dircolors outputs commands to set the LS_COLOR environment variable.
The LS_COLOR variable is use to change the default color scheme used by The LS_COLOR variable is use to change the default color scheme used by
ls and related utilities.</para></sect4> ls and related utilities.</para></sect4>
<sect4><title>du</title> <sect4><title>du</title>
<para>du displays the amount of disk space used by each argument and for each <para>du displays the amount of disk space used by each file or directory
subdirectory of directory arguments.</para></sect4> listed on the command-line and by each of their subdirectories.</para></sect4>
<sect4><title>install</title> <sect4><title>install</title>
<para>install copies files and sets their permission modes and, if possible, <para>install copies files and sets their permission modes and, if possible,

View File

@ -9,12 +9,11 @@
<sect4><title>flex</title> <sect4><title>flex</title>
<para>flex is a tool for generating programs which recognize <para>flex is a tool for generating programs which recognize
patterns in text. Pattern recognition is very useful in many applications. patterns in text. Pattern recognition is very useful in many applications.
A user sets up rules A user sets up rules about what to look for and flex will make a program
what to look for and flex will make a program that looks for those that looks for those patterns. The reason people use flex is that it is
patterns. The reason people use flex is that it is much easier to set up much easier to set up rules for what to look for than to write the actual
rules for what to look for than to write the actual program which finds program which finds the text.</para></sect4>
the text.</para></sect4>
<sect4><title>flex++</title> <sect4><title>flex++</title>
<para>flex++ invokes a version of flex which is used exclusively for <para>flex++ invokes a version of flex which is used exclusively for

View File

@ -9,7 +9,7 @@ g++, gcc, gccbug, gcov and tradcpp0</para></sect3>
<sect3><title>Descriptions</title> <sect3><title>Descriptions</title>
<sect4><title>cc, cc1, cc1plus, gcc</title> <sect4><title>cc, cc1, cc1plus, gcc</title>
<para>These are the C compiler. A compiler translates source code in <para>These are the C compiler. A compiler translates source code in
text format to a format that a computer understands. After a source code text format to a format that a computer understands. After a source code
file is compiled into an object file, a linker will create an executable file is compiled into an object file, a linker will create an executable
file from one or more of these compiler generated object files.</para></sect4> file from one or more of these compiler generated object files.</para></sect4>
@ -21,7 +21,7 @@ gcc etc.</para></sect4>
<sect4><title>c++filt</title> <sect4><title>c++filt</title>
<para>The C++ language provides function overloading, which means that it is <para>The C++ language provides function overloading, which means that it is
possible to write many functions with the same name (providing each takes possible to write many functions with the same name (providing each takes
parameters of different types). All C++ function names are encoded into parameters of different types). All C++ function names are encoded into
a low-level assembly label (this process is known as mangling). The c++filt a low-level assembly label (this process is known as mangling). The c++filt
program does the inverse mapping: it decodes (demangles) low-level names program does the inverse mapping: it decodes (demangles) low-level names
into user-level names so that the linker can keep these overloaded functions into user-level names so that the linker can keep these overloaded functions
@ -63,7 +63,7 @@ libsupc++.a</para></sect3>
programs including getopt, obstack, strerror, strtol and strtoul.</para></sect4> programs including getopt, obstack, strerror, strtol and strtoul.</para></sect4>
<sect4><title>libstdc++</title> <sect4><title>libstdc++</title>
<para>libstdc++ is the C++ library. It is used by C++ programs and contains <para>libstdc++ is the C++ library. It is used by C++ programs and contains
functions that are frequently used in C++ programs. This way the functions that are frequently used in C++ programs. This way the
programmer doesn't have to write certain functions (such as writing a programmer doesn't have to write certain functions (such as writing a
string of text to the screen) from scratch every time he creates a string of text to the screen) from scratch every time he creates a

View File

@ -11,11 +11,11 @@ team-address, trigger, urlget, user-email and xgettext</para></sect3>
<sect3><title>Descriptions</title> <sect3><title>Descriptions</title>
<sect4><title>config.charset</title> <sect4><title>config.charset</title>
<para>The config.charset script outputs a system dependent table of <para>The config.charset script outputs a system-dependent table of
character encoding aliases.</para></sect4> character encoding aliases.</para></sect4>
<sect4><title>config.rpath</title> <sect4><title>config.rpath</title>
<para>The config.rpath script outputs a system dependent set of variables, <para>The config.rpath script outputs a system-dependent set of variables,
describing how to set the run time search path of shared libraries in an describing how to set the run time search path of shared libraries in an
executable.</para></sect4> executable.</para></sect4>
@ -23,7 +23,7 @@ executable.</para></sect4>
<para>The gettext package is used for internationalization (also known as <para>The gettext package is used for internationalization (also known as
i18n) and for localization (also known as l10n). Programs can be i18n) and for localization (also known as l10n). Programs can be
compiled with Native Language Support (NLS) which enable them to output compiled with Native Language Support (NLS) which enable them to output
messages in the users native language rather than in the default English messages in the user's native language rather than in the default English
language.</para></sect4> language.</para></sect4>
<sect4><title>gettextize</title> <sect4><title>gettextize</title>
@ -36,7 +36,7 @@ forms.</para></sect4>
<sect4><title>msgattrib</title> <sect4><title>msgattrib</title>
<para>The msgattrib program filters the messages of a translation catalog <para>The msgattrib program filters the messages of a translation catalog
according to their attributes, and manipulates the attributes.</para></sect4> according to their attributes and manipulates the attributes.</para></sect4>
<sect4><title>msgcat</title> <sect4><title>msgcat</title>
<para>The msgcat program finds messages which are common in several raw <para>The msgcat program finds messages which are common in several raw

View File

@ -72,8 +72,8 @@ PC profiling.</para></sect4>
<sect4><title>pt_chown</title> <sect4><title>pt_chown</title>
<para>pt_chown sets the owner, group and access permission of the <para>pt_chown sets the owner, group and access permission of the
slave pseudo terminal corresponding to the master pseudo terminal passed slave pseudo terminal corresponding to the master pseudo terminal passed
on file descriptor `3'. This is the helper program for the `grantpt' on file descriptor `3'. This is the helper program for the `grantpt'
function. It is not intended to be run directly from the command function. It is not intended to be run directly from the command
line.</para></sect4> line.</para></sect4>
<sect4><title>rpcgen</title> <sect4><title>rpcgen</title>
@ -83,8 +83,8 @@ line.</para></sect4>
<para>rpcinfo makes an RPC call to an RPC server.</para></sect4> <para>rpcinfo makes an RPC call to an RPC server.</para></sect4>
<sect4><title>sln</title> <sect4><title>sln</title>
<para>sln symbolically links dest to source. It is statically linked, <para>sln symbolically links dest to source. It is statically linked,
needing no dynamic linking at all. Thus sln is useful to make symbolic needing no dynamic linking at all. Thus sln is useful to make symbolic
links to dynamic libraries if the dynamic linking system for some reason links to dynamic libraries if the dynamic linking system for some reason
is nonfunctional.</para></sect4> is nonfunctional.</para></sect4>
@ -139,7 +139,7 @@ segfaults.</para></sect4>
programs in Linux.</para></sect4> programs in Linux.</para></sect4>
<sect4><title>libc, libc_nonshared, libc_p</title> <sect4><title>libc, libc_nonshared, libc_p</title>
<para>These files constitute the main C library. The C library is a <para>These files constitute the main C library. The C library is a
collection of commonly used functions in programs. collection of commonly used functions in programs.
This way a programmer doesn't need to create his own functions for every This way a programmer doesn't need to create his own functions for every
single task. The most common things like writing a string to the screen single task. The most common things like writing a string to the screen
@ -149,7 +149,7 @@ are already present and at the disposal of the programmer.</para>
a dynamic and a static one. In short, when a program uses a static C a dynamic and a static one. In short, when a program uses a static C
library, the code from the C library is copied into the executable file. library, the code from the C library is copied into the executable file.
When a program uses a dynamic library, the executable will not When a program uses a dynamic library, the executable will not
contain the code from the C library, but instead a routine that loads contain the code from the C library, but instead a routine that loads
the functions from the library at the time the program is run. This the functions from the library at the time the program is run. This
means a significant decrease in the file size of a program. The means a significant decrease in the file size of a program. The
documentation that comes with the C library describes this in more documentation that comes with the C library describes this in more

View File

@ -53,13 +53,13 @@ for an HP Laserjet 4 printer.</para></sect4>
<sect4><title>grotty</title> <sect4><title>grotty</title>
<para>grotty translates the output of GNU troff into a form suitable for <para>grotty translates the output of GNU troff into a form suitable for
typewriter-like devices.</para></sect4> typewriter-like devices.</para></sect4>
<sect4><title>gtbl</title> <sect4><title>gtbl</title>
<para>gtbl is the GNU implementation of tbl.</para></sect4> <para>gtbl is the GNU implementation of tbl.</para></sect4>
<sect4><title>hpftodit</title> <sect4><title>hpftodit</title>
<para>hpftodit creates a font file for use with groff -Tlj4 from an HP <para>hpftodit creates a font file for use with groff -Tlj4 from an HP
tagged font metric file.</para></sect4> tagged font metric file.</para></sect4>
<sect4><title>indxbib</title> <sect4><title>indxbib</title>
@ -74,9 +74,9 @@ standard output.</para></sect4>
<sect4><title>lookbib</title> <sect4><title>lookbib</title>
<para>lookbib prints a prompt on the standard error (unless the standard input <para>lookbib prints a prompt on the standard error (unless the standard input
is not a terminal), reads from the standard input a line containing a set is not a terminal), reads from the standard input a line containing a set
of keywords, searches the bibliographic databases in a specified file for of keywords, searches the bibliographic databases in a specified file for
references containing those keywords, prints any references found on the references containing those keywords, prints any references found on the
standard output, and repeats this process until the end of input.</para></sect4> standard output and repeats this process until the end of input.</para></sect4>
<sect4><title>mmroff</title> <sect4><title>mmroff</title>
<para>mmroff is a simple preprocessor for groff.</para></sect4> <para>mmroff is a simple preprocessor for groff.</para></sect4>
@ -93,7 +93,7 @@ to ASCII.</para></sect4>
<sect4><title>pic</title> <sect4><title>pic</title>
<para>pic compiles descriptions of pictures embedded within troff or TeX input <para>pic compiles descriptions of pictures embedded within troff or TeX input
files into commands that are understood by TeX or troff.</para></sect4> files into commands that are understood by TeX or troff.</para></sect4>
<sect4><title>pre-grohtml and post-grohtml</title> <sect4><title>pre-grohtml and post-grohtml</title>
<para>pre- and post-grohtml translate the output of GNU troff <para>pre- and post-grohtml translate the output of GNU troff
@ -102,17 +102,17 @@ to html.</para></sect4>
<sect4><title>refer</title> <sect4><title>refer</title>
<para>refer copies the contents of a file to the standard output, except that <para>refer copies the contents of a file to the standard output, except that
lines between .[ and .] are interpreted as citations, and lines between .R1 lines between .[ and .] are interpreted as citations, and lines between .R1
and .R2 are interpreted as commands about how citations are to be and .R2 are interpreted as commands about how citations are to be
processed.</para></sect4> processed.</para></sect4>
<sect4><title>soelim</title> <sect4><title>soelim</title>
<para>soelim reads files and replaces lines of the form <para>soelim reads files and replaces lines of the form
<emphasis>.so file</emphasis> by the contents of <emphasis>.so file</emphasis> by the contents of
<emphasis>file</emphasis>.</para></sect4> <emphasis>file</emphasis>.</para></sect4>
<sect4><title>tbl</title> <sect4><title>tbl</title>
<para>tbl compiles descriptions of tables embedded within troff input files <para>tbl compiles descriptions of tables embedded within troff input files
into commands that are understood by troff.</para></sect4> into commands that are understood by troff.</para></sect4>
<sect4><title>tfmtodit</title> <sect4><title>tfmtodit</title>
<para>tfmtodit creates a font file for use with <userinput>groff <para>tfmtodit creates a font file for use with <userinput>groff

View File

@ -23,9 +23,8 @@ performance).</para></sect4>
Lempel-Ziv coding (LZ77).</para></sect4> Lempel-Ziv coding (LZ77).</para></sect4>
<sect4><title>zcat</title> <sect4><title>zcat</title>
<para>zcat uncompresses either a list of files on the command line or a <para>zcat uncompresses, and writes to standard output, either a list of files
file being read from its standard input. Then, that uncompressed data is on the command line or a file being read from standard input.</para></sect4>
written to standard output.</para></sect4>
<sect4><title>zcmp</title> <sect4><title>zcmp</title>
<para>zcmp invokes the cmp program on compressed files.</para></sect4> <para>zcmp invokes the cmp program on compressed files.</para></sect4>
@ -35,7 +34,7 @@ written to standard output.</para></sect4>
<sect4><title>zforce</title> <sect4><title>zforce</title>
<para>zforce forces a .gz extension on all gzip files so that gzip will not <para>zforce forces a .gz extension on all gzip files so that gzip will not
compress them twice. This can be useful for files with names truncated compress them twice. This can be useful for files with names truncated
after a file transfer.</para></sect4> after a file transfer.</para></sect4>
<sect4><title>zgrep</title> <sect4><title>zgrep</title>
@ -43,7 +42,7 @@ after a file transfer.</para></sect4>
<sect4><title>zmore</title> <sect4><title>zmore</title>
<para>zmore is a filter which allows examination of compressed or plain text <para>zmore is a filter which allows examination of compressed or plain text
files one screen at a time on a soft-copy terminal (similar to the files, one screen at a time on a soft-copy terminal (similar to the
more program).</para></sect4> more program).</para></sect4>
<sect4><title>znew</title> <sect4><title>znew</title>

View File

@ -28,11 +28,11 @@ please refer to its man page or info page.</para>
than others, because we just happen to know more about certain than others, because we just happen to know more about certain
packages than about others. If you think anything should be added to the packages than about others. If you think anything should be added to the
following descriptions, please don't hesitate to email the mailing following descriptions, please don't hesitate to email the mailing
lists. We intend that the list should contain an in-depth description lists. We intend that the list should contain an in-depth description
of every package installed, but we can't do it without help.</para> of every package installed, but we can't do it without help.</para>
<para>Please note that currently only what a package does is described and not <para>Please note that currently only what a package does is described and not
why it needs to be installed. This may be added later.</para> why it needs to be installed. This may be added later.</para>
<para>Also listed are all of the installation dependencies for all the <para>Also listed are all of the installation dependencies for all the
packages that are installed in this book. The listings will include packages that are installed in this book. The listings will include

View File

@ -68,7 +68,7 @@ table entries.</para></sect4>
<sect4><title>setleds</title> <sect4><title>setleds</title>
<para>setleds sets the keyboard LEDs. Many people find it useful to have numlock <para>setleds sets the keyboard LEDs. Many people find it useful to have numlock
enabled by default, and it is by using this program that you can enabled by default and, by using this program, you can
achieve this.</para></sect4> achieve this.</para></sect4>
<sect4><title>setlogcons</title> <sect4><title>setlogcons</title>
@ -83,7 +83,7 @@ achieve this.</para></sect4>
<sect4><title>showfont</title> <sect4><title>showfont</title>
<para>showfont displays data about a font. The information shown includes font <para>showfont displays data about a font. The information shown includes font
information, font properties, character metrics, and information, font properties, character metrics and
character bitmaps.</para></sect4> character bitmaps.</para></sect4>
<sect4><title>showkey</title> <sect4><title>showkey</title>

View File

@ -18,7 +18,7 @@ software can run.</para></sect4>
<sect4><title>linux kernel headers</title> <sect4><title>linux kernel headers</title>
<para>These are the files we copy to <para>These are the files we copy to
<filename>/usr/include/{linux,asm}</filename> in Chapter 5. They should <filename>/usr/include/{linux,asm}</filename> in Chapter 5. They should
match those which glibc was compiled against and therefore should match those which glibc was compiled against and therefore should
<emphasis>not</emphasis> be replaced when upgrading the kernel. They are <emphasis>not</emphasis> be replaced when upgrading the kernel. They are
essential for compiling many programs.</para></sect4> essential for compiling many programs.</para></sect4>

View File

@ -9,7 +9,7 @@
<sect4><title>less</title> <sect4><title>less</title>
<para>The less program is a file pager (or text viewer). It <para>The less program is a file pager (or text viewer). It
displays the contents of a file with the ability to scroll. Less is an displays the contents of a file and has the ability to scroll. Less is an
improvement on the common pager called <quote>more</quote>. Less has improvement on the common pager called <quote>more</quote>. Less has
the ability to scroll backwards through files as well and it doesn't need the ability to scroll backwards through files as well and it doesn't need
to read the entire file when it starts, which makes it faster when reading to read the entire file when it starts, which makes it faster when reading

View File

@ -24,7 +24,7 @@ package.</para></sect4>
<sect3><title>Descriptions</title> <sect3><title>Descriptions</title>
<sect4><title>libltdl, libltdl.so.3, libltdl.so.3.1.0</title> <sect4><title>libltdl, libltdl.so.3, libltdl.so.3.1.0</title>
<para>A small library that aims at hiding from programmers <para>A small library that aims at hiding, from programmers,
the various difficulties of dlopening libraries.</para></sect4> the various difficulties of dlopening libraries.</para></sect4>
</sect3> </sect3>

View File

@ -8,7 +8,7 @@
<sect3><title>Descriptions</title> <sect3><title>Descriptions</title>
<sect4><title>m4</title> <sect4><title>m4</title>
<para>m4 is a macro processor. It copies input to output expanding macros as it <para>m4 is a macro processor. It copies input to output, expanding macros as it
goes. Macros are either built-in or user-defined and can take any number goes. Macros are either built-in or user-defined and can take any number
of arguments. Besides just doing macro expansion, m4 has built-in functions of arguments. Besides just doing macro expansion, m4 has built-in functions
for including named files, running Unix commands, doing integer arithmetic, for including named files, running Unix commands, doing integer arithmetic,

View File

@ -9,16 +9,16 @@ whatis</para></sect3>
<sect3><title>Descriptions</title> <sect3><title>Descriptions</title>
<sect4><title>apropos</title> <sect4><title>apropos</title>
<para>apropos searches a set of database files containing short descriptions <para>apropos searches for keywords in a set of database files, containing
of system commands for keywords and displays the result on the standard short descriptions of system commands, and displays the result on the standard
output.</para></sect4> output.</para></sect4>
<sect4><title>makewhatis</title> <sect4><title>makewhatis</title>
<para>makewhatis reads all the manual pages contained in given sections of <para>makewhatis reads all the manual pages contained in given sections of
manpath or the pre-formatted pages contained in the given sections of manpath or the pre-formatted pages contained in the given sections of
catpath. For each page, it writes a line in the whatis database; each catpath. For each page, it writes a line in the whatis database. Each
line consists of the name of the page and a short description, line consists of the name of the page and a short description,
separated by a dash. The description is extracted using the content of separated by a dash. The description is extracted using the content of
the NAME section of the manual page.</para></sect4> the NAME section of the manual page.</para></sect4>
<sect4><title>man</title> <sect4><title>man</title>
@ -31,8 +31,9 @@ the NAME section of the manual page.</para></sect4>
<para>man2html converts a manual page into html.</para></sect4> <para>man2html converts a manual page into html.</para></sect4>
<sect4><title>whatis</title> <sect4><title>whatis</title>
<para>whatis searches a set of database files containing short descriptions <para>
of system commands for keywords and displays the result on the standard whatis searches for keywords in a set of database files, containing short
descriptions of system commands, and displays the result on the standard
output. Only complete word matches are displayed.</para></sect4> output. Only complete word matches are displayed.</para></sect4>
</sect3> </sect3>

View File

@ -14,7 +14,7 @@ modinfo, modprobe (link to insmod) and rmmod (link to insmod)</para></sect3>
kernel modules.</para></sect4> kernel modules.</para></sect4>
<sect4><title>genksyms</title> <sect4><title>genksyms</title>
<para>genksyms reads (on standard input) the output from gcc -E source.c <para>genksyms reads (on standard input) the output from gcc -E source.c
and generates a file containing version information.</para></sect4> and generates a file containing version information.</para></sect4>
<sect4><title>insmod</title> <sect4><title>insmod</title>
@ -39,7 +39,7 @@ running kernel.</para></sect4>
<sect4><title>modinfo</title> <sect4><title>modinfo</title>
<para>modinfo examines an object file associated with a kernel module and <para>modinfo examines an object file associated with a kernel module and
displays any information that it can glean.</para></sect4> displays any information that it can glean.</para></sect4>
<sect4><title>modprobe</title> <sect4><title>modprobe</title>
<para>modprobe uses a Makefile-like dependency file, created by depmod, <para>modprobe uses a Makefile-like dependency file, created by depmod,

View File

@ -13,15 +13,15 @@ reset (link to tset), tack, tic, toe, tput and tset.</para></sect3>
description.</para></sect4> description.</para></sect4>
<sect4><title>clear</title> <sect4><title>clear</title>
<para>clear clears the screen if this is possible. It looks in <para>clear clears the screen if this is possible. It looks in
the environment for the terminal type and then in the terminfo database the environment for the terminal type and then in the terminfo database
to figure out how to clear the screen.</para></sect4> to figure out how to clear the screen.</para></sect4>
<sect4><title>infocmp</title> <sect4><title>infocmp</title>
<para>infocmp can be used to compare a binary terminfo entry with <para>infocmp can be used to compare a binary terminfo entry with
other terminfo entries, rewrite a terminfo description to other terminfo entries, rewrite a terminfo description to
take advantage of the use= terminfo field, or print out a take advantage of the use= terminfo field, or print out a
terminfo description from the binary file (term) in a variety of terminfo description from the binary file (term) in a variety of
formats (the opposite of what tic does).</para></sect4> formats (the opposite of what tic does).</para></sect4>
<sect4><title>infotocap</title> <sect4><title>infotocap</title>
@ -30,7 +30,7 @@ description.</para></sect4>
<sect4><title>reset</title> <sect4><title>reset</title>
<para>reset sets cooked and echo modes, turns off cbreak and raw modes, <para>reset sets cooked and echo modes, turns off cbreak and raw modes,
turns on new-line translation and resets any unset special characters to turns on new-line translation and resets any unset special characters to
their default values before doing terminal initialization the same way their default values before doing terminal initialization the same way
as tset.</para></sect4> as tset.</para></sect4>

View File

@ -36,7 +36,7 @@ addresses.</para></sect4>
<sect4><title>netstat</title> <sect4><title>netstat</title>
<para>netstat is a multi-purpose tool used to print the network connections, <para>netstat is a multi-purpose tool used to print the network connections,
routing tables, interface statistics, masquerade connections, and multicast routing tables, interface statistics, masquerade connections and multicast
memberships.</para></sect4> memberships.</para></sect4>
<sect4><title>nisdomainname</title> <sect4><title>nisdomainname</title>

View File

@ -28,8 +28,8 @@ pod2usage, podchecker, podselect, pstruct, s2p and splain</para></sect3>
<para>h2xs converts .h C header files to Perl extensions.</para></sect4> <para>h2xs converts .h C header files to Perl extensions.</para></sect4>
<sect4><title>perl, perl5.6.1</title> <sect4><title>perl, perl5.6.1</title>
<para>perl is the Practical Extraction and Report Language. It combines <para>perl is the Practical Extraction and Report Language. It combines
some of the best features of C, sed, awk, and sh into one powerful some of the best features of C, sed, awk and sh into one powerful
language.</para></sect4> language.</para></sect4>
<sect4><title>perlbug</title> <sect4><title>perlbug</title>
@ -41,7 +41,7 @@ modules that come with it, and mail them.</para></sect4>
<sect4><title>perldoc</title> <sect4><title>perldoc</title>
<para>perldoc looks up a piece of documentation in .pod format that is <para>perldoc looks up a piece of documentation in .pod format that is
embedded in the perl installation tree or in a perl script, and displays it embedded in the perl installation tree or in a perl script and displays it
via "pod2man | nroff -man | $PAGER".</para></sect4> via "pod2man | nroff -man | $PAGER".</para></sect4>
<sect4><title>pl2pm</title> <sect4><title>pl2pm</title>

View File

@ -5,7 +5,7 @@
<sect3><title>Program Files</title> <sect3><title>Program Files</title>
<para>chage, chfn, chpasswd, chsh, dpasswd, expiry, faillog, gpasswd, <para>chage, chfn, chpasswd, chsh, dpasswd, expiry, faillog, gpasswd,
groupadd, groupdel, groupmod, groups, grpck, grpconv, grpunconv, lastlog, groupadd, groupdel, groupmod, groups, grpck, grpconv, grpunconv, lastlog,
login, logoutd, mkpasswd, newgrp, newusers, passwd, pwck, pwconv, pwunconv, login, logoutd, mkpasswd, newgrp, newusers, passwd, pwck, pwconv, pwunconv,
sg (link to newgrp), useradd, userdel, usermod, vigr (link to vipw) and sg (link to newgrp), useradd, userdel, usermod, vigr (link to vipw) and
vipw</para></sect3> vipw</para></sect3>
@ -26,7 +26,7 @@ input and uses this information to update a group of
existing users.</para></sect4> existing users.</para></sect4>
<sect4><title>chsh</title> <sect4><title>chsh</title>
<para>chsh changes the user login shell.</para></sect4> <para>chsh changes the user login shell.</para></sect4>
<sect4><title>dpasswd</title> <sect4><title>dpasswd</title>
<para>dpasswd adds, deletes, and updates dial-up passwords for <para>dpasswd adds, deletes, and updates dial-up passwords for
@ -128,7 +128,7 @@ are specified on the command line.</para></sect4>
<sect4><title>vipw and vigr</title> <sect4><title>vipw and vigr</title>
<para>vipw and vigr will edit the files /etc/passwd and /etc/group, <para>vipw and vigr will edit the files /etc/passwd and /etc/group,
respectively. With the -s flag, they will edit the shadow versions of respectively. With the -s flag, they will edit the shadow versions of
those files, /etc/shadow and /etc/gshadow, respectively.</para></sect4> those files, /etc/shadow and /etc/gshadow, respectively.</para></sect4>
</sect3> </sect3>

View File

@ -42,7 +42,7 @@ integer numbers.</para></sect4>
<para>false always exits with a status code indicating failure.</para></sect4> <para>false always exits with a status code indicating failure.</para></sect4>
<sect4><title>groups</title> <sect4><title>groups</title>
<para>groups prints the groups a user is in.</para></sect4> <para>groups prints a user's group memberships.</para></sect4>
<sect4><title>hostid</title> <sect4><title>hostid</title>
<para>hostid prints the numeric identifier (in hexadecimal) for the current <para>hostid prints the numeric identifier (in hexadecimal) for the current
@ -60,7 +60,7 @@ user or a given user.</para></sect4>
<sect4><title>nohup</title> <sect4><title>nohup</title>
<para>nohup runs a command immune to hangups, with output to a <para>nohup runs a command immune to hangups, with output to a
non-tty.</para></sect4> log file.</para></sect4>
<sect4><title>pathchk</title> <sect4><title>pathchk</title>
<para>pathchk checks whether file names are valid or portable.</para></sect4> <para>pathchk checks whether file names are valid or portable.</para></sect4>
@ -73,7 +73,7 @@ a certain user.</para></sect4>
<para>printenv prints all or part of the environment.</para></sect4> <para>printenv prints all or part of the environment.</para></sect4>
<sect4><title>printf</title> <sect4><title>printf</title>
<para>printf formats and prints data (the same as the printf C <para>printf formats and prints data (the same as the C printf
function).</para></sect4> function).</para></sect4>
<sect4><title>pwd</title> <sect4><title>pwd</title>

View File

@ -19,7 +19,7 @@ the flag -h or -r).</para></sect4>
<sect4><title>init</title> <sect4><title>init</title>
<para>init is the parent of all processes. Its primary role is to create <para>init is the parent of all processes. Its primary role is to create
processes from a script stored in the file /etc/inittab. This processes from a script stored in the file /etc/inittab. This
file usually has entries which cause init to spawn gettys on each line that file usually has entries which cause init to spawn gettys on each line that
users can log in. It also controls autonomous processes required by any users can log in. It also controls autonomous processes required by any
particular system.</para></sect4> particular system.</para></sect4>
@ -31,7 +31,7 @@ shell that is running the script it was called from.</para></sect4>
<sect4><title>last</title> <sect4><title>last</title>
<para>last searches back through the file /var/log/wtmp (or the file designated <para>last searches back through the file /var/log/wtmp (or the file designated
by the -f flag) and displays a list of all users logged in (and out) by the -f flag) and displays a list of all users logged in (and out)
since that file was created.</para></sect4> since that file was created.</para></sect4>
<sect4><title>lastb</title> <sect4><title>lastb</title>
@ -58,7 +58,7 @@ the computer.</para></sect4>
<sect4><title>runlevel</title> <sect4><title>runlevel</title>
<para>runlevel reads the system utmp file (typically /var/run/utmp) to locate <para>runlevel reads the system utmp file (typically /var/run/utmp) to locate
the runlevel record, and then prints the previous and current system the runlevel record, and then prints the previous and current system
runlevel on its standard output, separated by a single space.</para></sect4> runlevel on its standard output, separated by a single space.</para></sect4>
<sect4><title>shutdown</title> <sect4><title>shutdown</title>
<para>shutdown brings the system down in a secure way. All logged-in users are <para>shutdown brings the system down in a secure way. All logged-in users are

View File

@ -11,7 +11,7 @@ texindex</para></sect3>
<sect4><title>info</title> <sect4><title>info</title>
<para>The info program reads Info documents, usually contained in the <para>The info program reads Info documents, usually contained in the
/usr/share/info directory. Info documents are like man(ual) pages, but /usr/share/info directory. Info documents are like man(ual) pages, but
they tend to be more in depth than just explaining the options to a they tend to go deeper than just explaining the options to a
program.</para></sect4> program.</para></sect4>
<sect4><title>infokey</title> <sect4><title>infokey</title>
@ -22,14 +22,14 @@ a binary format.</para></sect4>
<para>The install-info program updates the info entries. When the info <para>The install-info program updates the info entries. When the info
program is run, a list with available topics (ie: available info documents) program is run, a list with available topics (ie: available info documents)
will be presented. The install-info program is used to maintain this list of will be presented. The install-info program is used to maintain this list of
available topics. If info files are removed manually, it is also necessary available topics. If info files are removed manually, you must also delete
to delete the topic in the index file as well. This program is used for the topic in the index file. This program is used for
that. It also works the other way around when info documents are that. It also works the other way around when info documents are
added.</para></sect4> added.</para></sect4>
<sect4><title>makeinfo</title> <sect4><title>makeinfo</title>
<para>The makeinfo program translates Texinfo source documents into various <para>The makeinfo program translates Texinfo source documents into various
formats. Available formats are: info files, plain text and HTML.</para></sect4> formats. Available formats are: info files, plain text and HTML.</para></sect4>
<sect4><title>texi2dvi</title> <sect4><title>texi2dvi</title>
<para>The texi2dvi program prints Texinfo documents.</para></sect4> <para>The texi2dvi program prints Texinfo documents.</para></sect4>

View File

@ -21,7 +21,7 @@ file.</para></sect4>
<para>comm compares two sorted files line by line.</para></sect4> <para>comm compares two sorted files line by line.</para></sect4>
<sect4><title>csplit</title> <sect4><title>csplit</title>
<para>csplit outputs pieces of a file separated by (a) pattern(s) to files <para>csplit outputs pieces of a file separated by (a) pattern(s) to files
xx01, xx02, ..., and outputs byte counts of each piece to standard xx01, xx02, ..., and outputs byte counts of each piece to standard
output.</para></sect4> output.</para></sect4>
@ -30,7 +30,7 @@ output.</para></sect4>
output.</para></sect4> output.</para></sect4>
<sect4><title>expand</title> <sect4><title>expand</title>
<para>expand converts tabs in files to spaces, writing to standard <para>expand converts tabs in files to spaces, writing to standard
output.</para></sect4> output.</para></sect4>
<sect4><title>fmt</title> <sect4><title>fmt</title>
@ -106,8 +106,8 @@ output.</para></sect4>
<para>uniq removes duplicate lines from a sorted file.</para></sect4> <para>uniq removes duplicate lines from a sorted file.</para></sect4>
<sect4><title>wc</title> <sect4><title>wc</title>
<para>wc prints line, word, and byte counts for each specified file, and a <para>wc prints line, word and byte counts for each specified file and a
total line if more than one file is specified.</para></sect4> total line, if more than one file is specified.</para></sect4>
</sect3> </sect3>

View File

@ -2,7 +2,7 @@
<title>blfs-support</title> <title>blfs-support</title>
<para>The blfs-support list handles support requests for any software <para>The blfs-support list handles support requests for any software
that is not built or installed in the LFS book. Any software beyond what is that is not built or installed in the LFS book. Any software beyond what is
installed as part of the base LFS system can be discussed here.</para> installed as part of the base LFS system can be discussed here.</para>
</sect2> </sect2>

View File

@ -59,6 +59,10 @@
</itemizedlist> </itemizedlist>
</para></listitem> </para></listitem>
<listitem><para>September 28th, 2002 [timothy]: Applied Bill Maltby's
grammatic-fixes patch. Changed "$LFS" to "LFS" when speaking of the LFS
environment variable.</para></listitem>
<listitem><para>September 23rd, 2002 [timothy]: Applied Bill Maltby's <listitem><para>September 23rd, 2002 [timothy]: Applied Bill Maltby's
grammatic-related patches.</para></listitem> grammatic-related patches.</para></listitem>

View File

@ -3,12 +3,12 @@
<?dbhtml filename="conventions.html" dir="chapter01"?> <?dbhtml filename="conventions.html" dir="chapter01"?>
<para>To make things easy to follow, there are a number of conventions used <para>To make things easy to follow, there are a number of conventions used
throughout the book. Following are some examples:</para> throughout the book. Following are some examples:</para>
<para><userinput>./configure --prefix=/usr</userinput></para> <para><userinput>./configure --prefix=/usr</userinput></para>
<blockquote><para>This form of text is designed to be typed exactly <blockquote><para>This form of text is designed to be typed exactly
as seen unless otherwise noted in the surrounding text. It is also used as seen unless otherwise noted in the surrounding text. It is also used
in the explanation sections to identify which of the commands is being in the explanation sections to identify which of the commands is being
referenced.</para></blockquote> referenced.</para></blockquote>
@ -40,7 +40,7 @@ bin:x:1:
</para> </para>
<blockquote><para>This type of section is used mainly when creating <blockquote><para>This type of section is used mainly when creating
configuration files. The first command (in bold) tells the system to create configuration files. The first command (in bold) tells the system to create
the file $LFS/etc/group from whatever is typed on the following lines until the file $LFS/etc/group from whatever is typed on the following lines until
the sequence EOF is encountered. Therefore, this whole section is generally the sequence EOF is encountered. Therefore, this whole section is generally
typed as seen.</para></blockquote> typed as seen.</para></blockquote>

View File

@ -2,7 +2,7 @@
<title>lfs-support</title> <title>lfs-support</title>
<para>The lfs-support mailing list provides support to users building an <para>The lfs-support mailing list provides support to users building an
LFS system as far as the end of the main book. Requests for help with LFS system as far as the end of the main book. Requests for help with
installing software beyond the base system should go to the blfs-support installing software beyond the base system should go to the blfs-support
list.</para> list.</para>

View File

@ -18,7 +18,7 @@ unsubscribe lfs-dev
unsubscribe blfs-support unsubscribe blfs-support
unsubscribe alfs-discuss</literallayout></blockquote> unsubscribe alfs-discuss</literallayout></blockquote>
<para>After the email is sent, the Listar program will reply with an <para>After the email is sent, the Listar program will reply with an
email requesting a confirmation of the unsubscription email requesting a confirmation of the unsubscription
request. After this confirmation email is sent back, Listar will request. After this confirmation email is sent back, Listar will
send an email again with the message that the user has been unsubscribed send an email again with the message that the user has been unsubscribed

View File

@ -3,7 +3,7 @@
<?dbhtml filename="aboutlfs.html" dir="chapter02"?> <?dbhtml filename="aboutlfs.html" dir="chapter02"?>
<para>Please read the following carefully: throughout this book <para>Please read the following carefully: throughout this book
the variable $LFS will be used frequently. $LFS must at all times be the variable LFS will be used frequently. $LFS must at all times be
replaced with the directory where the partition that contains the LFS system replaced with the directory where the partition that contains the LFS system
is mounted. How to create and where to mount the partition will be is mounted. How to create and where to mount the partition will be
explained in full detail in Chapter 4. For example, let's assume that explained in full detail in Chapter 4. For example, let's assume that
@ -28,18 +28,18 @@ it literally. Your shell will replace $LFS with /mnt/lfs when it processes
the command line (meaning when you hit enter after having typed the the command line (meaning when you hit enter after having typed the
command).</para> command).</para>
<para>If you plan to use $LFS, do not forget to set the $LFS variable at all <para>If you plan to use $LFS, do not forget to set the LFS variable at all
times. If the variable is not set and is used in a command, $LFS will times. If the variable is not set and is used in a command, $LFS will
be ignored and whatever is left will be executed. A command like be ignored and whatever is left will be executed. A command like
<userinput>echo "root:x:0:0:root:/root:/bin/bash" &gt; <userinput>echo "root:x:0:0:root:/root:/bin/bash" &gt;
$LFS/etc/passwd</userinput> without the $LFS variable set will $LFS/etc/passwd</userinput> without the LFS variable set will
re-create your host system's /etc/passwd file. Simply put: it will re-create your host system's /etc/passwd file. Simply put: it will
destroy your current password database file.</para> destroy your current password database file.</para>
<para>One way to make sure that $LFS is set at all times is adding it to <para>One way to make sure that $LFS is set at all times is adding it to
the /root/.bash_profile and /root/.bashrc files so that every time the /root/.bash_profile and /root/.bashrc files so that every time
you login as user root, or you <userinput>su</userinput> to user root, you login as user root, or you <userinput>su</userinput> to user root,
the $LFS variable is set.</para> the LFS variable is set.</para>
</sect1> </sect1>

View File

@ -24,7 +24,7 @@ essential things to include in your request are:</para>
</itemizedlist> </itemizedlist>
<para>(Note that saying that you've deviated from the book doesn't mean <para>(Note that saying that you've deviated from the book doesn't mean
that we won't help you. After all, LFS is about choice. It'll just that we won't help you. After all, LFS is about choice. It'll just
help us to see other possible causes of your problem.)</para> help us to see other possible causes of your problem.)</para>
</sect2> </sect2>
@ -45,17 +45,17 @@ Include those relevant lines if you decide to ask for help.</para>
<para>To help us find the cause of the problem, both screen output and <para>To help us find the cause of the problem, both screen output and
the contents of various files are useful. The screen output from both the contents of various files are useful. The screen output from both
the ./configure script and the make run can be useful. Don't blindly the ./configure script and the make run can be useful. Don't blindly
include the whole thing but on the other hand, don't include too little. include the whole thing but on the other hand, don't include too little.
As an example, here is some screen output from make:</para> As an example, here is some screen output from make:</para>
<para><screen>gcc -DALIASPATH=\"/mnt/lfs/usr/share/locale:.\" <para><screen>gcc -DALIASPATH=\"/mnt/lfs/usr/share/locale:.\"
-DLOCALEDIR=\"/mnt/lfs/usr/share/locale\" -DLIBDIR=\"/mnt/lfs/usr/lib\" -DLOCALEDIR=\"/mnt/lfs/usr/share/locale\" -DLIBDIR=\"/mnt/lfs/usr/lib\"
-DINCLUDEDIR=\"/mnt/lfs/usr/include\" -DHAVE_CONFIG_H -I. -I. -DINCLUDEDIR=\"/mnt/lfs/usr/include\" -DHAVE_CONFIG_H -I. -I.
-g -O2 -c getopt1.c -g -O2 -c getopt1.c
gcc -g -O2 -static -o make ar.o arscan.o commands.o dir.o expand.o file.o gcc -g -O2 -static -o make ar.o arscan.o commands.o dir.o expand.o file.o
function.o getopt.o implicit.o job.o main.o misc.o read.o remake.o rule.o function.o getopt.o implicit.o job.o main.o misc.o read.o remake.o rule.o
signame.o variable.o vpath.o default.o remote-stub.o version.o opt1.o signame.o variable.o vpath.o default.o remote-stub.o version.o opt1.o
-lutil job.o: In function `load_too_high': -lutil job.o: In function `load_too_high':
/lfs/tmp/make-3.79.1/job.c:1565: undefined reference to `getloadavg' /lfs/tmp/make-3.79.1/job.c:1565: undefined reference to `getloadavg'
collect2: ld returned 1 exit status collect2: ld returned 1 exit status
@ -66,16 +66,16 @@ make[1]: Leaving directory `/lfs/tmp/make-3.79.1'
make: *** [all-recursive-am] Error 2</screen></para> make: *** [all-recursive-am] Error 2</screen></para>
<para>In this case, many people just include the bottom section where it <para>In this case, many people just include the bottom section where it
says <screen>make [2]: *** [make] Error 1</screen> and onwards. This says <screen>make [2]: *** [make] Error 1</screen> and onwards. This
isn't enough for us to diagnose the problem because it only tells us isn't enough for us to diagnose the problem because it only tells us
that <emphasis>something</emphasis> went wrong, not that <emphasis>something</emphasis> went wrong, not
<emphasis>what</emphasis> went wrong. The whole section, as <emphasis>what</emphasis> went wrong. The whole section, as
in the example above, is what should be included to be helpful, because it in the example above, is what should be included to be helpful, because it
includes the command that was executed and the command's error includes the command that was executed and the command's error
message(s).</para> message(s).</para>
<para>An excellent article on asking for help on the Internet in general <para>An excellent article on asking for help on the Internet in general
has been written by Eric S. Raymond. It is available online at <ulink has been written by Eric S. Raymond. It is available online at <ulink
url="http://www.tuxedo.org/~esr/faqs/smart-questions.html"/>. url="http://www.tuxedo.org/~esr/faqs/smart-questions.html"/>.
Read and follow the hints in that document and you are much more likely Read and follow the hints in that document and you are much more likely
to get a response to start with and also to get the help you actually to get a response to start with and also to get the help you actually

View File

@ -3,8 +3,8 @@
<?dbhtml filename="install.html" dir="chapter02"?> <?dbhtml filename="install.html" dir="chapter02"?>
<para>Before you start using the LFS book, we should point out that all <para>Before you start using the LFS book, we should point out that all
of the commands here assume that you are using the bash shell. If you of the commands here assume that you are using the bash shell. If you
aren't, the commands may work, but we can't guarantee it. If you want a aren't, the commands may work, but we can't guarantee it. If you want a
simple life, use bash.</para> simple life, use bash.</para>
<para>Before you can actually start doing something with a package, you need <para>Before you can actually start doing something with a package, you need
@ -31,7 +31,7 @@ running:</para>
<para><screen><userinput>bzcat filename.tar.bz2 | tar -xv</userinput></screen></para> <para><screen><userinput>bzcat filename.tar.bz2 | tar -xv</userinput></screen></para>
<para>Nowadays most tar programs, but not all, are <para>Nowadays most tar programs, but not all, are
patched to be able to use bzip2 files directly. They use either patched to be able to use bzip2 files directly. They use either
the -I, the -y, or the -j parameter, which work the same as the -z the -I, the -y, or the -j parameter, which work the same as the -z
parameter for handling gzip files. The above construction, however, parameter for handling gzip files. The above construction, however,
works no matter how your host system decided to patch tar.</para> works no matter how your host system decided to patch tar.</para>
@ -76,7 +76,7 @@ available for when you need it again.</para>
<para>There is one exception; the kernel source tree. Keep it around as you <para>There is one exception; the kernel source tree. Keep it around as you
will need it later in this book when building a kernel. Nothing before then will need it later in this book when building a kernel. Nothing before then
will use the kernel tree, so the source tree won't be in your way. If, will use the kernel tree, so the source tree won't be in your way. If,
however, you are short of disk space, you can remove the kernel tree and however, you are short of disk space, you can remove the kernel tree and
re-untar it later when required.</para> re-untar it later when required.</para>

View File

@ -5,11 +5,11 @@
<para>LFS intends to be, as far as possible, platform independent. Having <para>LFS intends to be, as far as possible, platform independent. Having
said that, the main LFS development work occurs on the x86 platform. We said that, the main LFS development work occurs on the x86 platform. We
attempt to include information where possible on differences for other attempt to include information where possible on differences for other
platforms such as PPC. If you come across a problem compiling which is platforms such as PPC. If you come across a problem compiling which is
not related to the x86 platform, still feel free to ask for help on the not related to the x86 platform, still feel free to ask for help on the
mailing lists. Even better, if you come up with a solution to a mailing lists. Even better, if you come up with a solution to a
particular problem related to one of the other platforms, please let us particular problem related to one of the other platforms, please let us
know at the lfs-dev mailing list. We will then (subject to confirming know at the lfs-dev mailing list. We will then (subject to confirming
it works) include that in the book.</para> it works) include that in the book.</para>
</sect1> </sect1>

View File

@ -19,8 +19,8 @@ directory is chosen, just make sure you remember what you chose.</para>
<para>Replace <quote>xxx</quote> by the partition's designation (like hda11).</para> <para>Replace <quote>xxx</quote> by the partition's designation (like hda11).</para>
<para>This directory (/mnt/lfs) is the $LFS variable you have read about <para>This directory (/mnt/lfs) is the LFS variable you have read about
back in Chapter 2. If you were planning to make use of the $LFS environment back in Chapter 2. If you were planning to make use of the LFS environment
variable, <userinput>export LFS=/mnt/lfs</userinput> has to be executed variable, <userinput>export LFS=/mnt/lfs</userinput> has to be executed
now.</para> now.</para>

View File

@ -3,9 +3,9 @@
<para>This package is known to behave badly when you have changed its default <para>This package is known to behave badly when you have changed its default
optimization flags (including the -march and -mcpu options). Binutils is optimization flags (including the -march and -mcpu options). Binutils is
best left alone. Therefore, if you have defined any environment variables best left alone. Therefore, if you have defined any environment variables
that override default optimizations, such as CFLAGS and CXXFLAGS, we that override default optimizations, such as CFLAGS and CXXFLAGS, we
recommend unsetting or modifying them when building binutils. You have been recommend unsetting or modifying them when building binutils. You have been
warned.</para> warned.</para>
<para>Install Binutils by running the following commands:</para> <para>Install Binutils by running the following commands:</para>

View File

@ -6,9 +6,9 @@ This patch fixes a few bugs. In particular it contains the "copy fix" and
"var fix" documented at "var fix" documented at
<ulink url="http://www.zipworld.com.au/~gschafer/lfs-tweaks.html"/>.</para> <ulink url="http://www.zipworld.com.au/~gschafer/lfs-tweaks.html"/>.</para>
<para><userinput>--prefix=/static:</userinput> This is NOT a typo. GCC hard <para><userinput>--prefix=/static:</userinput> This is NOT a typo. GCC hard
codes some paths while compiling and so we need to pass /static as the codes some paths while compiling and so we need to pass /static as the
prefix during ./configure. We pass the real install prefix during the prefix during ./configure. We pass the real install prefix during the
make install command later.</para> make install command later.</para>
<para><userinput>--enable-languages=c:</userinput> This builds the C <para><userinput>--enable-languages=c:</userinput> This builds the C

View File

@ -7,9 +7,9 @@ commands.</para>
<para>This package is known to behave badly when you have changed its <para>This package is known to behave badly when you have changed its
default optimization flags (including the -march and -mcpu options). GCC is default optimization flags (including the -march and -mcpu options). GCC is
best left alone. Therefore, if you have defined any environment variables best left alone. Therefore, if you have defined any environment variables
that override default optimizations, such as CFLAGS and CXXFLAGS, we that override default optimizations, such as CFLAGS and CXXFLAGS, we
recommend unsetting or modifying them when building GCC. You have recommend unsetting or modifying them when building GCC. You have
been warned.</para> been warned.</para>
<para>Install GCC by running the following commands:</para> <para>Install GCC by running the following commands:</para>

View File

@ -3,7 +3,7 @@
<para><userinput>CPPFLAGS=-D_GNU_SOURCE: </userinput> <para><userinput>CPPFLAGS=-D_GNU_SOURCE: </userinput>
This flag fixes installation problems of this package on PPC and m68k This flag fixes installation problems of this package on PPC and m68k
platforms (that we know of). It doesn't hurt compilation on other platforms (that we know of). It doesn't hurt compilation on other
platforms, such as x86, so we do it by default.</para> platforms, such as x86, so we do it by default.</para>
</sect2> </sect2>

View File

@ -29,13 +29,13 @@ saved any space (except maybe RAM until the library is needed). The
<emphasis>real</emphasis> advantage of dynamically linked libraries is <emphasis>real</emphasis> advantage of dynamically linked libraries is
that we only need one copy of the library. If <filename>ls</filename> and that we only need one copy of the library. If <filename>ls</filename> and
<filename>rm</filename> both use the same library, then we don't need two <filename>rm</filename> both use the same library, then we don't need two
copies of the library, as they can both get the code from the same file. copies of the library, as they can both get the code from the same file.
Even when in memory, the two programs share the same code, rather than loading Even when in memory, the two programs share the same code, rather than loading
duplicates into memory. So not only are we saving hard disk space, but also duplicates into memory. So not only are we saving hard disk space, but also
precious RAM.</para> precious RAM.</para>
<para>If dynamic linking saves so much room, then why are we making everything <para>If dynamic linking saves so much room, then why are we making everything
statically linked? Well, that's because when you chroot into your brand new statically linked? Well, that's because when you chroot into your brand new
(but very incomplete) LFS environment, these dynamic libraries won't be (but very incomplete) LFS environment, these dynamic libraries won't be
available because they are somewhere else in your old directory tree available because they are somewhere else in your old directory tree
(<filename>/usr/lib</filename> for example) which won't be accessible (<filename>/usr/lib</filename> for example) which won't be accessible
@ -52,7 +52,7 @@ all the programs we just did in Chapter 5, but this time dynamically linked,
so that we can take advantage of the space saving opportunities.</para> so that we can take advantage of the space saving opportunities.</para>
<para>And there you have it, that's why you need to use those weird <para>And there you have it, that's why you need to use those weird
<userinput>-static</userinput> flags. If you try building everything <userinput>-static</userinput> flags. If you try building everything
without them, you'll see very quickly what without them, you'll see very quickly what
happens when you chroot into your newly crippled LFS system.</para> happens when you chroot into your newly crippled LFS system.</para>

View File

@ -2,7 +2,7 @@
<title>About debugging symbols</title> <title>About debugging symbols</title>
<?dbhtml filename="aboutdebug.html" dir="chapter06"?> <?dbhtml filename="aboutdebug.html" dir="chapter06"?>
<para>Most programs and libraries are by default compiled with debugging <para>Most programs and libraries are, by default, compiled with debugging
symbols included (with gcc option -g).</para> symbols included (with gcc option -g).</para>
<para>When debugging a program or library that was compiled with debugging <para>When debugging a program or library that was compiled with debugging
@ -43,7 +43,7 @@ Wildcards can be used to treat multiple files (use something like
<para>For your convenience, Chapter 9 includes one simple command to strip <para>For your convenience, Chapter 9 includes one simple command to strip
all debugging symbols from all programs and libraries on your system. all debugging symbols from all programs and libraries on your system.
Additional information on optimization you can find in the hint at Additional information on optimization can be found in the hint at
<ulink url="&hints-root;optimization.txt"/>.</para> <ulink url="&hints-root;optimization.txt"/>.</para>
</sect1> </sect1>

View File

@ -2,7 +2,7 @@
<title>Command explanations</title> <title>Command explanations</title>
<para><userinput>tooldir=/usr:</userinput> Normally, the tooldir (the <para><userinput>tooldir=/usr:</userinput> Normally, the tooldir (the
directory where the executables from binutils end up in) is set to directory where the executables from binutils end up) is set to
$(exec_prefix)/$(target_alias) which expands into, for example, $(exec_prefix)/$(target_alias) which expands into, for example,
/usr/i686-pc-linux-gnu. Since we only build for our own system, we don't /usr/i686-pc-linux-gnu. Since we only build for our own system, we don't
need this target specific directory in /usr. That setup would be used need this target specific directory in /usr. That setup would be used

View File

@ -2,9 +2,9 @@
<para>This package is known to behave badly when you have changed its <para>This package is known to behave badly when you have changed its
default optimization flags (including the -march and -mcpu options). Binutils default optimization flags (including the -march and -mcpu options). Binutils
is best left alone. Therefore, if you have defined any environment variables is best left alone. Therefore, if you have defined any environment variables
that override default optimizations, such as CFLAGS and CXXFLAGS, we that override default optimizations, such as CFLAGS and CXXFLAGS, we
recommend unsetting or modifying them when building binutils. You have recommend unsetting or modifying them when building binutils. You have
been warned.</para> been warned.</para>
<para>Install Binutils by running the following commands:</para> <para>Install Binutils by running the following commands:</para>

View File

@ -3,7 +3,7 @@
<para><userinput>make -f Makefile-libbz2_so:</userinput> This will cause bzip2 <para><userinput>make -f Makefile-libbz2_so:</userinput> This will cause bzip2
to be built using a different Makefile file, in this case the to be built using a different Makefile file, in this case the
Makefile-libbz2_so file which creates a dynamic libbz2.so library and Makefile-libbz2_so file, which creates a dynamic libbz2.so library and
links the bzip2 utilities against it.</para> links the bzip2 utilities against it.</para>
</sect2> </sect2>

View File

@ -16,7 +16,7 @@ mv /usr/bin/{bzip2recover,bzless,bzmore} /bin &amp;&amp;
ln -s bzip2 /bin/bunzip2 &amp;&amp; ln -s bzip2 /bin/bunzip2 &amp;&amp;
ln -s bzip2 /bin/bzcat</userinput></screen></para> ln -s bzip2 /bin/bzcat</userinput></screen></para>
<para>Although it's not strictly a part of a basic LFS system it's worth <para>Although it's not strictly a part of a basic LFS system, it's worth
mentioning that a patch for Tar can be downloaded which enables the tar mentioning that a patch for Tar can be downloaded which enables the tar
program to compress and uncompress using bzip2/bunzip2 easily. With a program to compress and uncompress using bzip2/bunzip2 easily. With a
plain tar, you have to use constructions like plain tar, you have to use constructions like

View File

@ -1,14 +1,14 @@
<sect1 id="ch06-chroot"> <sect1 id="ch06-chroot">
<title>Entering the chroot'ed environment</title> <title>Entering the chroot environment</title>
<?dbhtml filename="chroot.html" dir="chapter06"?> <?dbhtml filename="chroot.html" dir="chapter06"?>
<para>It is time to enter the chroot'ed environment in order to begin installing <para>It is time to enter the chroot environment in order to begin installing
the packages we need. Before you can chroot, however, you need to become the packages we need. Before you can chroot, however, you need to become
<emphasis>root</emphasis>, since only <emphasis>root</emphasis> <emphasis>root</emphasis>, since only <emphasis>root</emphasis>
can execute the <userinput>chroot</userinput> command.</para> can execute the <userinput>chroot</userinput> command.</para>
<para>Become <emphasis>root</emphasis> and run the following command <para>Become <emphasis>root</emphasis> and run the following command
to enter the chroot'ed environment:</para> to enter the chroot environment:</para>
<para><screen><userinput>chroot $LFS /static/bin/env -i \ <para><screen><userinput>chroot $LFS /static/bin/env -i \
&nbsp;&nbsp;&nbsp;&nbsp;HOME=/root TERM=$TERM PS1='\u:\w\$ ' \ &nbsp;&nbsp;&nbsp;&nbsp;HOME=/root TERM=$TERM PS1='\u:\w\$ ' \
@ -17,20 +17,20 @@ to enter the chroot'ed environment:</para>
</para> </para>
<para>The <userinput>-i</userinput> option given to the <para>The <userinput>-i</userinput> option given to the
<userinput>env</userinput> command will clear all variables of the chroot'ed <userinput>env</userinput> command will clear all variables of the chroot
environment. After that, only the HOME, TERM, PS1 and PATH variables are environment. After that, only the HOME, TERM, PS1 and PATH variables are
set again. The TERM=$TERM construct will set the TERM variable inside chroot set again. The TERM=$TERM construct will set the TERM variable inside chroot
to the same value as outside chroot; this variable is needed for programs to the same value as outside chroot; this variable is needed for programs
like vim and less to operate properly. If you need other variables present, like vim and less to operate properly. If you need other variables present,
such as CFLAGS or CXXFLAGS, this is a good place to set them again.</para> such as CFLAGS or CXXFLAGS, this is a good place to set them again.</para>
<para>From this point on there's no need anymore to use the $LFS variable, <para>From this point on there's no need anymore to use the LFS variable,
because everything you do will be restricted to the LFS file system -- since because everything you do will be restricted to the LFS file system -- since
what the shell thinks is <filename class="directory">/</filename> is actually what the shell thinks is <filename class="directory">/</filename> is actually
<filename class="directory">/mnt/lfs</filename>.</para> <filename class="directory">/mnt/lfs</filename>.</para>
<para>You have to make sure all the commands in the rest of this chapter and <para>You have to make sure all the commands in the rest of this chapter and
in the following chapters are run from within the chroot'ed environment. in the following chapters are run from within the chroot environment.
If you ever leave this environment for any reason (rebooting for example), If you ever leave this environment for any reason (rebooting for example),
you must remember to again enter chroot and mount proc (discussed later) you must remember to again enter chroot and mount proc (discussed later)
before continuing with the installations.</para> before continuing with the installations.</para>

View File

@ -2,7 +2,7 @@
<title>Creating directories</title> <title>Creating directories</title>
<?dbhtml filename="creatingdirs.html" dir="chapter06"?> <?dbhtml filename="creatingdirs.html" dir="chapter06"?>
<para>Let's now create some structure in our LFS file system, let's create <para>Let's now create some structure in our LFS file system. Let's create
a directory tree. Issuing the following commands will create a more or less a directory tree. Issuing the following commands will create a more or less
standard tree:</para> standard tree:</para>
@ -22,7 +22,7 @@ mkdir /opt/{bin,doc,include,info} &amp;&amp;
mkdir -p /opt/{lib,man/man{1,2,3,4,5,6,7,8}} &amp;&amp; mkdir -p /opt/{lib,man/man{1,2,3,4,5,6,7,8}} &amp;&amp;
ln -s ../var/tmp /usr</userinput></screen></para> ln -s ../var/tmp /usr</userinput></screen></para>
<para>Directories are by default created with permission mode 755, but this <para>Directories are, by default, created with permission mode 755, but this
isn't desirable for all directories. We will make two changes: one to the home isn't desirable for all directories. We will make two changes: one to the home
directory of root, and another to the directories for temporary files.</para> directory of root, and another to the directories for temporary files.</para>
@ -31,11 +31,11 @@ chmod 1777 /tmp /var/tmp</userinput></screen></para>
<para>The first mode change ensures that not just everybody can enter the <para>The first mode change ensures that not just everybody can enter the
<filename class="directory">/root</filename> directory -- the same <filename class="directory">/root</filename> directory -- the same
a normal user would do with his or her home directory. as a normal user would do with his or her home directory.
The second mode change makes sure that any user can write to the The second mode change makes sure that any user can write to the
<filename class="directory">/tmp</filename> and <filename class="directory">/tmp</filename> and
<filename class="directory">/var/tmp</filename> directories, but <filename class="directory">/var/tmp</filename> directories, but
cannot remove other users's files from them. The latter is prohibited cannot remove other users' files from them. The latter is prohibited
by the so-called "sticky bit" -- the highest bit in the 1777 bit mask.</para> by the so-called "sticky bit" -- the highest bit in the 1777 bit mask.</para>
<para>Now that the directories are created, move the source tarballs that <para>Now that the directories are created, move the source tarballs that
@ -53,7 +53,7 @@ tree this standard stipulates the existence of
<filename class="directory">/usr/share/games</filename>, but we don't <filename class="directory">/usr/share/games</filename>, but we don't
much like these for a base system. However, feel free to make your system much like these for a base system. However, feel free to make your system
FHS-compliant. As to the structure of the FHS-compliant. As to the structure of the
<filename class="directory">/usr/local/share</filename> subdirectory the FHS <filename class="directory">/usr/local/share</filename> subdirectory, the FHS
isn't precise, so we created here the directories that we think are needed.</para> isn't precise, so we created here the directories that we think are needed.</para>
</sect2> </sect2>

View File

@ -4,10 +4,10 @@
<para><userinput>--with-root-prefix="":</userinput> The <para><userinput>--with-root-prefix="":</userinput> The
reason for supplying this option is because of the setup of the reason for supplying this option is because of the setup of the
e2fsprogs Makefile. Some programs are essential for system use when, e2fsprogs Makefile. Some programs are essential for system use when,
for example, /usr isn't mounted (like the e2fsck program). These for example, /usr isn't mounted (like the e2fsck program). These
programs and libraries therefore belong in directories like /lib and programs and libraries, therefore, belong in directories like /lib and
/sbin. If this option isn't passed to E2fsprogs's configure, it places /sbin. If this option isn't passed to E2fsprogs's configure, it places
these programs in /usr which is not what we want.</para> these programs in /usr, which is not what we want.</para>
<para><userinput>--enable-elf-shlibs:</userinput> This creates shared <para><userinput>--enable-elf-shlibs:</userinput> This creates shared
libraries that some programs in this package can make use of.</para> libraries that some programs in this package can make use of.</para>

View File

@ -18,7 +18,7 @@ make libexecdir=/usr/bin install</userinput></screen></para>
<para>By default, the location of the updatedb database is in /usr/var. <para>By default, the location of the updatedb database is in /usr/var.
If you would rather be FHS compliant, you may wish to use another If you would rather be FHS compliant, you may wish to use another
location. The following commands use the database file location. The following commands use the database file
<filename>/var/lib/misc/locatedb</filename> which is FHS compliant.</para> <filename>/var/lib/misc/locatedb</filename> which is FHS compliant.</para>
<para><screen><userinput>patch -Np1 -i ../findutils-&findutils-patch-version;.patch &amp;&amp; <para><screen><userinput>patch -Np1 -i ../findutils-&findutils-patch-version;.patch &amp;&amp;

View File

@ -7,9 +7,9 @@ commands.</para>
<para>This package is known to behave badly when you have changed its <para>This package is known to behave badly when you have changed its
default optimization flags (including the -march and -mcpu options). GCC is default optimization flags (including the -march and -mcpu options). GCC is
best left alone. Therefore, if you have defined any environment variables best left alone. Therefore, if you have defined any environment variables
that override default optimizations, such as CFLAGS and CXXFLAGS, we that override default optimizations, such as CFLAGS and CXXFLAGS, we
recommend unsetting or modifying them when building Gcc. You have recommend unsetting or modifying them when building Gcc. You have
been warned.</para> been warned.</para>
<para>Install GCC by running the following commands. These commands will build <para>Install GCC by running the following commands. These commands will build

View File

@ -30,7 +30,7 @@ of libraries with profiling information. This command may be omitted if
you plan to do profiling.</para> you plan to do profiling.</para>
<para><userinput>--enable-add-ons:</userinput> This enables the add-on that <para><userinput>--enable-add-ons:</userinput> This enables the add-on that
we install with Glibc: linuxthreads</para> we install with Glibc, linuxthreads</para>
<para><userinput>--libexecdir=/usr/bin:</userinput> This will cause the <para><userinput>--libexecdir=/usr/bin:</userinput> This will cause the
pt_chown program to be installed in the /usr/bin directory.</para> pt_chown program to be installed in the /usr/bin directory.</para>

View File

@ -12,9 +12,9 @@ would do.</para>
<para>This package is known to behave badly when you have changed its <para>This package is known to behave badly when you have changed its
default optimization flags (including the -march and -mcpu options). Glibc default optimization flags (including the -march and -mcpu options). Glibc
is best left alone. Therefore, if you have defined any environment variables is best left alone. Therefore, if you have defined any environment variables
that override default optimizations, such as CFLAGS and CXXFLAGS, we that override default optimizations, such as CFLAGS and CXXFLAGS, we
recommend unsetting or modifying them when building Glibc. You have recommend unsetting or modifying them when building Glibc. You have
been warned.</para> been warned.</para>
<para>Also, don't pass the --enable-kernel option to the configure <para>Also, don't pass the --enable-kernel option to the configure
@ -40,8 +40,8 @@ exec /static/bin/bash --login</userinput></screen></para>
<para>An alternative to running <userinput>make <para>An alternative to running <userinput>make
localedata/install-locales</userinput> is to only install those locales localedata/install-locales</userinput> is to only install those locales
which you need or want. This can be achieved using the localedef which you need or want. This can be achieved using the localedef
command. Information on this can be found in the INSTALL command. Information on this can be found in the INSTALL
file in the glibc-&glibc-version; tree. One thing to note is that the file in the glibc-&glibc-version; tree. One thing to note is that the
<userinput>localedef</userinput> program assumes that the <filename <userinput>localedef</userinput> program assumes that the <filename
class="directory">/usr/lib/locale</filename> directory exists, so you need class="directory">/usr/lib/locale</filename> directory exists, so you need
@ -49,7 +49,7 @@ to create it first.</para>
<para>The Linux Threads man pages are not going to be installed at this <para>The Linux Threads man pages are not going to be installed at this
point because it requires a working Perl installation. We'll install Perl point because it requires a working Perl installation. We'll install Perl
later on in this chapter so we'll come back to the Linux Threads man page later on in this chapter, so we'll come back to the Linux Threads man page
installation after that.</para> installation after that.</para>
<para>During the configure stage you will see the following warning:</para> <para>During the configure stage you will see the following warning:</para>

View File

@ -2,7 +2,7 @@
<title>Command explanations</title> <title>Command explanations</title>
<para><userinput>make PROCESSEDEXAMPLEFILES="":</userinput> Groff has a few <para><userinput>make PROCESSEDEXAMPLEFILES="":</userinput> Groff has a few
extra dependencies that we don't install with LFS. This option disable the extra dependencies that we don't install with LFS. This option disables the
need for those tools.</para> need for those tools.</para>
<para><userinput>ln -s ...</userinput>: These symlinks are needed for some <para><userinput>ln -s ...</userinput>: These symlinks are needed for some

View File

@ -3,7 +3,7 @@
<?dbhtml filename="introduction.html" dir="chapter06"?> <?dbhtml filename="introduction.html" dir="chapter06"?>
<para>In this chapter we enter the building site, and start <para>In this chapter we enter the building site, and start
constructing our LFS system in earnest. That is, we chroot into constructing our LFS system in earnest. That is, we chroot into
our temporary mini Linux system, create some auxiliary things, our temporary mini Linux system, create some auxiliary things,
and then start installing all the packages, one by one.</para> and then start installing all the packages, one by one.</para>
@ -21,13 +21,13 @@ take a look at the optimization hint at
Compiler optimizations can make a program run faster, but they Compiler optimizations can make a program run faster, but they
may also cause compilation difficulties. If a package refuses may also cause compilation difficulties. If a package refuses
to compile when using optimization, try to compile it without to compile when using optimization, try to compile it without
optimization and see if the problem goes away.</para> optimization and see if the problem goes away.</para>
<para>The order in which packages are installed in this chapter has <para>The order in which packages are installed in this chapter has
to be strictly followed, to ensure that no program gets a path referring to be strictly followed, to ensure that no program gets a path referring
to <filename class="directory">/static</filename> hard-wired into it. to <filename class="directory">/static</filename> hard-wired into it.
For the same reason, <emphasis>do not </emphasis> compile packages For the same reason, <emphasis>do not </emphasis> compile packages
in parallel. Compiling in parallel may save you some time (especially on in parallel. Compiling in parallel may save you some time (especially on
dual-CPU machines), but it could result in a program containing a dual-CPU machines), but it could result in a program containing a
hard-wired path to <filename class="directory">/static</filename>, hard-wired path to <filename class="directory">/static</filename>,
which will cause the program to stop working when the static directory which will cause the program to stop working when the static directory

View File

@ -3,11 +3,11 @@
<para><userinput>patch -Np1 -i ../kbd-&kbd-patch-version;.patch</userinput>: <para><userinput>patch -Np1 -i ../kbd-&kbd-patch-version;.patch</userinput>:
This patch fixes two problems. The first one is the <userinput>loadkeys -d</userinput> This patch fixes two problems. The first one is the <userinput>loadkeys -d</userinput>
behaviour which is broken in current kbd versions. It is necessary to fix this, behaviour, which is broken in current kbd versions. It is necessary to fix this,
because the boot scripts rely on a proper <userinput>loadkeys -d</userinput>. because the boot scripts rely on a proper <userinput>loadkeys -d</userinput>.
The second part of the patch changes a Makefile so some utilities (setlogcons, The second part of the patch changes a Makefile so some utilities that are
setvesablank and getunimap) that are not installed by default, are installed as not installed by default (setlogcons, setvesablank and getunimap) are also
well.</para> installed.</para>
</sect2> </sect2>

View File

@ -26,7 +26,7 @@ sources should go into "/usr/src/linux" even though that hasn't been
true in a _loong_ time.</screen> true in a _loong_ time.</screen>
<para>The essential part is where Linus states that the header files should be <para>The essential part is where Linus states that the header files should be
<emphasis>the ones which glibc was compiled against</emphasis>. These are <emphasis>the ones which glibc was compiled against</emphasis>. These are
the headers that should be used when you later compile other packages, as they the headers that should be used when you later compile other packages, as they
are the ones that match the object-code library files. By copying the headers, are the ones that match the object-code library files. By copying the headers,
we ensure that they remain available if later you upgrade your kernel.</para> we ensure that they remain available if later you upgrade your kernel.</para>

View File

@ -8,7 +8,7 @@ for that. At the end we remove it again.</para>
<para><userinput>make mrproper</userinput>: This ensures that the kernel <para><userinput>make mrproper</userinput>: This ensures that the kernel
tree is absolutely clean. The kernel team recommends that this command be tree is absolutely clean. The kernel team recommends that this command be
issued prior to <emphasis>each</emphasis> kernel compilation, and that you issued prior to <emphasis>each</emphasis> kernel compilation and that you
shouldn't rely on the source tree being clean after untarring.</para> shouldn't rely on the source tree being clean after untarring.</para>
<para><userinput>make include/linux/version.h</userinput> and <para><userinput>make include/linux/version.h</userinput> and

View File

@ -21,7 +21,7 @@ update. Don't do this, as it has no use: the /etc/lilo.conf isn't present
yet. We will complete the installation of lilo in Chapter 8.</para> yet. We will complete the installation of lilo in Chapter 8.</para>
<para>The standard LILO prompt, or menu, may be replaced by the <para>The standard LILO prompt, or menu, may be replaced by the
LFS logo, or any logo you like. Martin Imobersteg has written a LFS logo or any logo you like. Martin Imobersteg has written a
hint about this, which is located at hint about this, which is located at
<ulink url="&hints-root;bootlogo.txt"/>.</para> <ulink url="&hints-root;bootlogo.txt"/>.</para>

View File

@ -4,9 +4,9 @@
<para><userinput>./MAKEDEV -v generic:</userinput> This creates a whole <para><userinput>./MAKEDEV -v generic:</userinput> This creates a whole
bunch of devices. Normally, these are all the devices you will need. But it bunch of devices. Normally, these are all the devices you will need. But it
is possible that some special devices needed for your hardware configuration is possible that some special devices needed for your hardware configuration
are missing. Create these with ./MAKEDEV -v &lt;device&gt;. are missing. Create these with ./MAKEDEV -v &lt;device&gt;.
The <userinput>generic-nopty</userinput> option mostly creates the same The <userinput>generic-nopty</userinput> option mostly creates the same
devices as <userinput>generic-nopty</userinput>, but skips those that aren't devices as <userinput>generic</userinput>, but skips those that aren't
needed if you are using devpts.</para> needed if you are using devpts.</para>
</sect2> </sect2>

View File

@ -1,8 +1,8 @@
<sect2> <sect2>
<title>Creating devices</title> <title>Creating devices</title>
<para>(Note that unpacking the MAKEDEV-&makedev-version;.bz2 file doesn't create <para>Note that unpacking the MAKEDEV-&makedev-version;.bz2 file doesn't create
a directory for you to cd into, as the file only contains a script.)</para> a directory for you to cd into, as the file only contains a script.</para>
<para>Prepare for the creation of the device files by running the <para>Prepare for the creation of the device files by running the
following commands:</para> following commands:</para>

View File

@ -17,7 +17,7 @@ edit the man.conf file and add the <userinput>-c</userinput> argument
to nroff.</para> to nroff.</para>
<para>You may want to take a look at the man hint <para>You may want to take a look at the man hint
at <ulink url="&hints-root;man.txt"/> which deals with formatting at <ulink url="&hints-root;man.txt"/>, which deals with formatting
and compression issues for man pages.</para> and compression issues for man pages.</para>
</sect2> </sect2>

View File

@ -3,7 +3,7 @@
<?dbhtml filename="proc.html" dir="chapter06"?> <?dbhtml filename="proc.html" dir="chapter06"?>
<para>In order for certain programs to function properly, the proc file <para>In order for certain programs to function properly, the proc file
system must be available within the chroot'ed environment. system must be available within the chroot environment.
As a file system can be mounted as many times and in as many places As a file system can be mounted as many times and in as many places
as you like, it's not a problem that the proc file system is already as you like, it's not a problem that the proc file system is already
mounted on your host system -- especially so because proc is a mounted on your host system -- especially so because proc is a
@ -21,7 +21,7 @@ command, such as these:</para>
<blockquote><screen>warning: can't open /etc/fstab: No such file or directory <blockquote><screen>warning: can't open /etc/fstab: No such file or directory
not enough memory</screen></blockquote> not enough memory</screen></blockquote>
<para>Ignore these, they're just caused due to the fact that the system <para>Ignore these, they're just due to the fact that the system
isn't installed completely yet and some files are missing. The mount itself isn't installed completely yet and some files are missing. The mount itself
will be successful and that's all we care about at this point.</para> will be successful and that's all we care about at this point.</para>

View File

@ -9,11 +9,11 @@ constructions that are no longer valid in the new C++ standard.</para>
shared ncurses library files.</para> shared ncurses library files.</para>
<para><userinput>chmod 755 *.5.2:</userinput> Shared libraries should be <para><userinput>chmod 755 *.5.2:</userinput> Shared libraries should be
executable. Ncurses install routine doesn't set the permissions executable. Ncurses's install routine doesn't set the permissions
properly so we do it manually instead.</para> properly so we do it manually instead.</para>
<para><userinput>ln -sf libncurses.a libcurses.a:</userinput> Some <para><userinput>ln -sf libncurses.a libcurses.a:</userinput> Some
programs try to link using -lcurses instead of -lncurses. This symlink programs try to link using -lcurses instead of -lncurses. This symlink
ensures that such programs will link without errors.</para> ensures that such programs will link without errors.</para>
</sect2> </sect2>

View File

@ -14,7 +14,7 @@ make update</userinput></screen></para>
<para>If you don't know what to answer to all the questions asked during <para>If you don't know what to answer to all the questions asked during
the <userinput>make</userinput> phase, then just accept the defaults, which the <userinput>make</userinput> phase, then just accept the defaults, which
will be just in fine in the majority of the cases. What you are asked here will be just fine in the majority of the cases. What you are asked here
are a bunch of questions relating to the kind of network protocols that you are a bunch of questions relating to the kind of network protocols that you
have enabled in your kernel.</para> have enabled in your kernel.</para>

View File

@ -8,7 +8,7 @@ make &amp;&amp;
make install</userinput></screen></para> make install</userinput></screen></para>
<para>If you want more control over the way perl sets itself up to be <para>If you want more control over the way perl sets itself up to be
build, you can run the interactive <userinput>Configure</userinput> script built, you can run the interactive <userinput>Configure</userinput> script
and modify the way perl is built. If you think you can live with the and modify the way perl is built. If you think you can live with the
(sensible) defaults perl auto-detects, then just use the commands listed (sensible) defaults perl auto-detects, then just use the commands listed
above.</para> above.</para>

View File

@ -35,8 +35,8 @@ audio:x:11:
<para>The created groups aren't part of any standard -- they are the groups <para>The created groups aren't part of any standard -- they are the groups
that the MAKEDEV script in the next section uses. that the MAKEDEV script in the next section uses.
Besides the group "root", the LSB recommends only a group "bin" with a GID Besides the group "root", the LSB recommends only a group "bin", with a GID
of 1 to be present. All other group names and GIDs can be chosen freely by of 1, be present. All other group names and GIDs can be chosen freely by
the user, as well-written packages don't depend on GID numbers but use the the user, as well-written packages don't depend on GID numbers but use the
group's name.</para> group's name.</para>

View File

@ -11,7 +11,7 @@ running:</para>
<para><screen><userinput>echo "HOSTNAME=lfs" &gt; /etc/sysconfig/network</userinput></screen></para> <para><screen><userinput>echo "HOSTNAME=lfs" &gt; /etc/sysconfig/network</userinput></screen></para>
<para><quote>lfs</quote> needs to be replaced with the name the computer is <para><quote>lfs</quote> needs to be replaced with the name the computer is
to be called. You should not enter the FQDN (Fully Qualified Domain to be called. You should not enter the FQDN (Fully Qualified Domain
Name) here. That information will be put in the Name) here. That information will be put in the
<filename>/etc/hosts</filename> file later on.</para> <filename>/etc/hosts</filename> file later on.</para>