text updates

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@1113 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
Gerard Beekmans 2001-08-29 19:29:31 +00:00
parent 884d51d657
commit 2b1174bee6
12 changed files with 31 additions and 27 deletions

View File

@ -2,8 +2,7 @@
<title>About debugging symbols</title> <title>About debugging symbols</title>
<para>Most programs and libraries by default are compiled with debugging <para>Most programs and libraries by default are compiled with debugging
symbols (gcc option -g) Let me explain what these debugging symbols symbols (gcc option -g).</para>
are and why you may not want them.</para>
<para>A program compiled with debugging symbols means a user can run a program <para>A program compiled with debugging symbols means a user can run a program
or library through a debugger and the debugger's output will be user or library through a debugger and the debugger's output will be user
@ -32,10 +31,7 @@ and gcc files) without debugging symbols: 16MB</para></listitem>
<para>Sizes vary depending on which compiler was used and which C library <para>Sizes vary depending on which compiler was used and which C library
version was used to link dynamic programs against, but results will be version was used to link dynamic programs against, but results will be
similar if you compare programs with and without debugging symbols. After similar if you compare programs with and without debugging symbols.</para>
I was done with this chapter and stripped all debugging symbols from all LFS
binaries I regained a little over 102 MB of disk space. Quite the
difference.</para>
<para>To remove debugging symbols from a binary (must be an a.out or ELF <para>To remove debugging symbols from a binary (must be an a.out or ELF
binary) run <userinput>strip --strip-debug filename</userinput>. Wild cards binary) run <userinput>strip --strip-debug filename</userinput>. Wild cards
@ -44,6 +40,10 @@ like <userinput>strip --strip-debug $LFS/usr/bin/*</userinput>).
Most people will probably never use a debugger on software, so by Most people will probably never use a debugger on software, so by
removing those symbols a lot of disk space can be regained.</para> removing those symbols a lot of disk space can be regained.</para>
<para>For your convenience, chapter 9 includes one simple command to strip
all debugging symbols from all programs and libraries on your
system.</para>
<para>You might find additional information in the optimization hint which can <para>You might find additional information in the optimization hint which can
be found at <ulink be found at <ulink
url="&hint-root;optimization.txt">&hint-root;optimization.txt</ulink> url="&hint-root;optimization.txt">&hint-root;optimization.txt</ulink>

View File

@ -25,9 +25,9 @@
<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 a user has to use constructions like bzcat file.tar.bz|tar plain tar, you have to use constructions like bzcat file.tar.bz|tar
xv or tar --use-compress-prog=bunzip2 -xvf file.tar.bz2 to use bzip2 and xv or tar --use-compress-prog=bunzip2 -xvf file.tar.bz2 to use bzip2 and
bunzip2 with tar. This patch gives the -j option so a user can unpack a bunzip2 with tar. This patch provides the -j option so you can unpack a
Bzip2 archive with tar xvfj file.tar.bz2. Applying this patch will be Bzip2 archive with tar xvfj file.tar.bz2. Applying this patch will be
mentioned later on when the Tar package is re-installed.</para> mentioned later on when the Tar package is re-installed.</para>

View File

@ -4,7 +4,7 @@
<para>By default the dynamic loader searches a few default paths for dynamic <para>By default the dynamic loader searches a few default paths for dynamic
libraries, so there normally isn't a need for the libraries, so there normally isn't a need for the
<filename>/etc/ld.so.conf</filename> file unless the system has extra <filename>/etc/ld.so.conf</filename> file unless the system has extra
directories in which a user wants the system to search for paths. The directories in which you want the system to search for libraries. The
<filename class="directory">/usr/local/lib</filename> directory isn't <filename class="directory">/usr/local/lib</filename> directory isn't
searched through for dynamic libraries by default, so we want to add searched through for dynamic libraries by default, so we want to add
this path so when you install software you won't be surprised by them not this path so when you install software you won't be surprised by them not

View File

@ -2,9 +2,10 @@
<title>Installation of File</title> <title>Installation of File</title>
<para>Note that the sed used in this installation only works if the line <para>Note that the sed used in this installation only works if the line
break is placed exactly where it is in the book. Don't try and put it break is placed exactly where it below. Don't try and put it
all on one line otherwise it won't work. Install File by running the all on one line otherwise it won't work.</para>
following commands:</para>
<para>Install File by running the following commands:</para>
<para><screen><userinput>cp readelf.h readelf.h.backup &amp;&amp;</userinput> <para><screen><userinput>cp readelf.h readelf.h.backup &amp;&amp;</userinput>
<userinput>sed '/#define __/a \</userinput> <userinput>sed '/#define __/a \</userinput>

View File

@ -9,8 +9,7 @@ next section.</para>
of the Glibc installation is running ldconfig to update the dynamic loader of the Glibc installation is running ldconfig to update the dynamic loader
cache. If this file doesn't exist, the installation will abort with an error cache. If this file doesn't exist, the installation will abort with an error
that it can't read the file, so we simply create an empty file (the empty file that it can't read the file, so we simply create an empty file (the empty file
will have Glibc default to using /lib and /usr/lib which is fine will have Glibc default to using /lib and /usr/lib which is fine).</para>
right now).</para>
<para><userinput>sed 's%\$(PERL)%/usr/bin/perl%' <para><userinput>sed 's%\$(PERL)%/usr/bin/perl%'
malloc/Makefile &gt; tmp~:</userinput> This sed command malloc/Makefile &gt; tmp~:</userinput> This sed command
@ -35,7 +34,8 @@ because as we don't have glibc on the LFS system yet, usernames can't
be resolved to their user id's. Therefore, we replace the username be resolved to their user id's. Therefore, we replace the username
root with the id 0. </para> root with the id 0. </para>
<para><userinput>mv tmp~ login/Makefile:</userinput> Asabove, we are using a temporary file (<filename>tmp~</filename>) to store the <para><userinput>mv tmp~ login/Makefile:</userinput> As above, we are using
a temporary file (<filename>tmp~</filename>) to store the
edited Makefile and then copying it back over the original.</para> edited Makefile and then copying it back over the original.</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

View File

@ -38,13 +38,15 @@ file in the glibc-&glibc-version; tree.</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>
<blockquote><screen>configure: warning: <blockquote><screen>configure: warning:
*** An auxiliary program is missing or too old; *** These auxiliary programs are missing or too old: msgfmt
*** some features will be disabled. *** some features will be disabled.
*** Check the INSTALL file for required versions.</screen></blockquote> *** Check the INSTALL file for required versions.</screen></blockquote>
<para> This warning refers to the missing msgfmt program from the <para>The missing msgfmt (from the gettext package which we will install
gettext package, but it can safely be ignored in our case. The glibc later in this chapter) is not fatal. The files msgfmt would create are
installation will not be affected.</para> already pre-built, so you won't be missing out on anything. You would
only need it if you make changes to the Glibc manual files. Since we
don't do this by default, we can safely ignore it.</para>
</sect2> </sect2>

View File

@ -18,7 +18,7 @@ properly so we do it manaully 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 they will install correctly.</para> ensures that such programs will link without errors.</para>
<para><userinput>ln -sf ../../lib/libncurses.so etc:</userinput> These <para><userinput>ln -sf ../../lib/libncurses.so etc:</userinput> These
links are created because if they aren't, the linker will not find the links are created because if they aren't, the linker will not find the

View File

@ -11,7 +11,7 @@
<para>There are other files in the <filename <para>There are other files in the <filename
class="directory">etc.sample</filename> directory which might be of class="directory">etc.sample</filename> directory which might be of
interest to the user.</para> interest to you.</para>
</sect2> </sect2>

View File

@ -6,9 +6,10 @@
<para><screen><userinput>make &amp;&amp;</userinput> <para><screen><userinput>make &amp;&amp;</userinput>
<userinput>make install</userinput></screen></para> <userinput>make install</userinput></screen></para>
<para>Net-tools <userinput>hostname</userinput> replaces that which was <para>The <userinput>hostname</userinput> from this package replaces the
originally installed by sh-utils. Sometimes the sh-utils version gets version that was originally installed by the sh-utils package. Sometimes
left behind as /bin/hostname.old so you may wish to remove it by running the sh-utils version gets left behind as /bin/hostname.old so you may
wish to remove it by running
<userinput>rm /bin/hostname.old</userinput></para> <userinput>rm /bin/hostname.old</userinput></para>
</sect2> </sect2>

View File

@ -5,7 +5,7 @@
This will set the Makefile variable XSCPT to an empty value so that This will set the Makefile variable XSCPT to an empty value so that
the XConsole installation is disabled. Otherwise "Make install" tries to the XConsole installation is disabled. Otherwise "Make install" tries to
copy the file XConsole to /usr/X11R6/lib/app-defaults. And that directory copy the file XConsole to /usr/X11R6/lib/app-defaults. And that directory
does not exist, because X is not installed yet.</para> does not exist, because X is not installed.</para>
</sect2> </sect2>

View File

@ -2,7 +2,7 @@
<title>Removing old NSS library files</title> <title>Removing old NSS library files</title>
<para>If you have copied the NSS Library files from the normal Linux system <para>If you have copied the NSS Library files from the normal Linux system
to the LFS system (because the normal system runs glibc-2.0) it's time to remove to the LFS system (because the normal system runs Glibc-2.0) it's time to remove
them now by running:</para> them now by running:</para>
<para><screen><userinput>rm /lib/libnss*.so.1 /lib/libnss*2.0*</userinput></screen></para> <para><screen><userinput>rm /lib/libnss*.so.1 /lib/libnss*2.0*</userinput></screen></para>

View File

@ -3,7 +3,7 @@
<para><userinput>sed 's/\(.*\) (nflg || \(.*\))\(.*\)/\1\2\3/' src/useradd.c <para><userinput>sed 's/\(.*\) (nflg || \(.*\))\(.*\)/\1\2\3/' src/useradd.c
&gt; useradd.c.temp &amp;&amp;</userinput>: This sed is used to fix a &gt; useradd.c.temp &amp;&amp;</userinput>: This sed is used to fix a
compilation bug which occurs due to a variable (nflg), being used but not compilation bug which occurs due to a variable (nflg) being used but not
defined.</para> defined.</para>
<para><userinput>cp limits login.access and others:</userinput> These files <para><userinput>cp limits login.access and others:</userinput> These files