mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-06-25 22:59:19 +01:00
text updates
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@1113 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
884d51d657
commit
2b1174bee6
@ -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>
|
||||||
|
@ -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>
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
@ -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 &&</userinput>
|
<para><screen><userinput>cp readelf.h readelf.h.backup &&</userinput>
|
||||||
<userinput>sed '/#define __/a \</userinput>
|
<userinput>sed '/#define __/a \</userinput>
|
||||||
|
@ -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 > tmp~:</userinput> This sed command
|
malloc/Makefile > 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
|
||||||
|
@ -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>
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
@ -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>
|
||||||
|
|
||||||
|
@ -6,9 +6,10 @@
|
|||||||
<para><screen><userinput>make &&</userinput>
|
<para><screen><userinput>make &&</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>
|
||||||
|
@ -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>
|
||||||
|
|
||||||
|
@ -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>
|
||||||
|
@ -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
|
||||||
> useradd.c.temp &&</userinput>: This sed is used to fix a
|
> useradd.c.temp &&</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
|
||||||
|
Loading…
Reference in New Issue
Block a user