[673b0d8] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
[b06ca36] | 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
[673b0d8] | 4 | <!ENTITY % general-entities SYSTEM "../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 | ]>
|
---|
[b28fd35] | 7 |
|
---|
[673b0d8] | 8 | <sect1 id="ch-tools-stripping">
|
---|
[b28fd35] | 9 | <?dbhtml filename="stripping.html"?>
|
---|
| 10 |
|
---|
| 11 | <title>Stripping</title>
|
---|
[673b0d8] | 12 |
|
---|
[b28fd35] | 13 | <para>The steps in this section are optional, but if the LFS partition is
|
---|
| 14 | rather small, it is beneficial to learn that unnecessary items can be removed.
|
---|
[0b37960] | 15 | The executables and libraries built so far contain about 70 MB of unneeded
|
---|
[b28fd35] | 16 | debugging symbols. Remove those symbols with:</para>
|
---|
[3d36131c] | 17 |
|
---|
[b3f1ebb3] | 18 | <screen arch="default"><userinput>strip --strip-debug /tools/lib/*
|
---|
| 19 | /usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
---|
| 20 |
|
---|
[fd48baa] | 21 | <screen arch="ml_32"><userinput>strip --strip-debug /tools/lib{,32}/*
|
---|
| 22 | /usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
---|
| 23 | <screen arch="ml_x32"><userinput>strip --strip-debug /tools/lib{,x32}/*
|
---|
| 24 | /usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
---|
| 25 | <screen arch="ml_all"><userinput>strip --strip-debug /tools/lib{,{,x}32}/*
|
---|
[3dc9543] | 26 | /usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
---|
[673b0d8] | 27 |
|
---|
[182d5d3] | 28 | <para>These commands will skip a number of files, reporting that it does not
|
---|
[3dc9543] | 29 | recognize their file format. Most of these are scripts instead of binaries.
|
---|
| 30 | Also use the system strip command to include the strip binary in /tools.</para>
|
---|
[81fd230] | 31 |
|
---|
[b28fd35] | 32 | <para>Take care <emphasis>not</emphasis> to use
|
---|
| 33 | <parameter>--strip-unneeded</parameter> on the libraries. The static
|
---|
| 34 | ones would be destroyed and the toolchain packages would need to be
|
---|
| 35 | built all over again.</para>
|
---|
[81fd230] | 36 |
|
---|
[776f1dc] | 37 | <para>To save more, remove the documentation:</para>
|
---|
[3d36131c] | 38 |
|
---|
[776f1dc] | 39 | <screen><userinput>rm -rf /tools/{,share}/{info,man,doc}</userinput></screen>
|
---|
[673b0d8] | 40 |
|
---|
[a91de2aa] | 41 | <para>Remove unneeded files:</para>
|
---|
| 42 |
|
---|
[b3f1ebb3] | 43 | <screen arch="default"><userinput>find /tools/{lib,libexec} -name \*.la -delete</userinput></screen>
|
---|
| 44 |
|
---|
[fd48baa] | 45 | <screen arch="ml_32"><userinput>find /tools/{lib{,32},libexec} -name \*.la -delete</userinput></screen>
|
---|
| 46 | <screen arch="ml_x32"><userinput>find /tools/{lib{,x32},libexec} -name \*.la -delete</userinput></screen>
|
---|
| 47 | <screen arch="ml_all"><userinput>find /tools/{lib{,{,x}32},libexec} -name \*.la -delete</userinput></screen>
|
---|
[a91de2aa] | 48 |
|
---|
[1fb7bae] | 49 | <para>At this point, you should have at least 3 GB of free space in
|
---|
| 50 | <envar>$LFS</envar> that can be used to build and install Glibc and Gcc in
|
---|
| 51 | the next phase. If you can build and install Glibc, you can build and install
|
---|
[0b37960] | 52 | the rest too.</para>
|
---|
[81fd230] | 53 |
|
---|
[673b0d8] | 54 | </sect1>
|
---|