chapter06.xml 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
  3. <!ENTITY % general-entities SYSTEM "../general.ent">
  4. %general-entities;
  5. ]>
  6. <chapter id="chapter-building-system" xreflabel="Chapter 6">
  7. <?dbhtml dir="chapter06"?>
  8. <title>Installing basic system software</title>
  9. <?dbhtml filename="chapter06.html"?>
  10. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="introduction.xml"/>
  11. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="kernfs.xml"/>
  12. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chroot.xml"/>
  13. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="changingowner.xml"/>
  14. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="creatingdirs.xml"/>
  15. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="createfiles.xml"/>
  16. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="pwdgroup.xml"/>
  17. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="devices.xml"/>
  18. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="linux-libc-headers.xml"/>
  19. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="man-pages.xml"/>
  20. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="glibc.xml"/>
  21. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="readjusting.xml"/>
  22. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="binutils.xml"/>
  23. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gcc.xml"/>
  24. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="coreutils.xml"/>
  25. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="zlib.xml"/>
  26. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="mktemp.xml"/>
  27. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="iana-etc.xml"/>
  28. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="findutils.xml"/>
  29. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gawk.xml"/>
  30. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="ncurses.xml"/>
  31. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="readline.xml"/>
  32. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="vim.xml"/>
  33. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="m4.xml"/>
  34. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bison.xml"/>
  35. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="less.xml"/>
  36. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="groff.xml"/>
  37. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="sed.xml"/>
  38. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="flex.xml"/>
  39. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gettext.xml"/>
  40. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="net-tools.xml"/>
  41. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="inetutils.xml"/>
  42. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="perl.xml"/>
  43. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="texinfo.xml"/>
  44. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="autoconf.xml"/>
  45. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="automake.xml"/>
  46. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bash.xml"/>
  47. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="file.xml"/>
  48. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="libtool.xml"/>
  49. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bzip2.xml"/>
  50. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="diffutils.xml"/>
  51. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="kbd.xml"/>
  52. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="e2fsprogs.xml"/>
  53. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="grep.xml"/>
  54. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="grub.xml"/>
  55. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gzip.xml"/>
  56. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="man.xml"/>
  57. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="make.xml"/>
  58. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="module-init-tools.xml"/>
  59. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="patch.xml"/>
  60. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="procps.xml"/>
  61. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="psmisc.xml"/>
  62. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="shadow.xml"/>
  63. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="sysklogd.xml"/>
  64. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="sysvinit.xml"/>
  65. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="tar.xml"/>
  66. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="udev.xml"/>
  67. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="util-linux.xml"/>
  68. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="aboutdebug.xml"/>
  69. <sect1 id="ch-system-strippingagain">
  70. <title>Stripping again</title>
  71. <?dbhtml filename="strippingagain.html"?>
  72. <para>If you are not a programmer and don't plan to do any debugging on your
  73. system software, you can shrink your system by about 200 MB by removing the
  74. debugging symbols from binaries and libraries. This causes no inconvenience
  75. other than not being able to debug the software fully any more.</para>
  76. <para>Most people who use the command mentioned below don't experience any
  77. problems. But it is easy to make a typo and render your new system unusable, so
  78. before running the strip command it is probably a good idea to make a backup of
  79. the current situation.</para>
  80. <para>If you are going to perform the stripping, special care is needed to
  81. ensure you're not running any of the binaries that are about to be stripped.
  82. If you're not sure whether you entered chroot with the command given in
  83. <xref linkend="ch-system-chroot"/>, then first exit from chroot:</para>
  84. <screen><userinput>logout</userinput></screen>
  85. <para>Then reenter it with:</para>
  86. <screen><userinput>chroot $LFS /tools/bin/env -i \
  87. HOME=/root TERM=$TERM PS1='\u:\w\$ ' \
  88. PATH=/bin:/usr/bin:/sbin:/usr/sbin \
  89. /tools/bin/bash --login</userinput></screen>
  90. <para>Now you can safely strip the binaries and libraries:</para>
  91. <screen><userinput>/tools/bin/find /{,usr/}{bin,lib,sbin} -type f \
  92. -exec /tools/bin/strip --strip-debug '{}' ';'</userinput></screen>
  93. <para>A large number of files will be reported as having their file format not
  94. recognized. These warnings can be safely ignored, they just mean that those
  95. files are scripts instead of binaries, no harm is done.</para>
  96. <para>If you are really tight on disk space, you may want to use
  97. <emphasis>--strip-all</emphasis> on the binaries in
  98. <filename>/{,usr/}{bin,sbin}</filename> to gain several more megabytes. But do
  99. <emphasis>not</emphasis> use this option on libraries: they would be
  100. destroyed.</para>
  101. </sect1>
  102. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="revisedchroot.xml"/>
  103. </chapter>