source: chapter05/stripping.xml@ 8eb3fe4

multilib-10.1 multilib-before-cross
Last change on this file since 8eb3fe4 was 8eb3fe4, checked in by Thomas Trepl <thomas@…>, 3 years ago

First apply of multilib-patch of April 1st, 2019

git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/multilib@11566 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 2.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="ch-tools-stripping">
9 <?dbhtml filename="stripping.html"?>
10
11 <title>Stripping</title>
12
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.
15 The executables and libraries built so far contain about 70 MB of unneeded
16 debugging symbols. Remove those symbols with:</para>
17
18<screen arch="default"><userinput>strip --strip-debug /tools/lib/*
19/usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
20
21<screen arch="multilib"><userinput>strip --strip-debug /tools/lib{,{,x}32}/*
22/usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
23
24 <para>These commands will skip a number of files, reporting that it does not
25 recognize their file format. Most of these are scripts instead of binaries.
26 Also use the system strip command to include the strip binary in /tools.</para>
27
28 <para>Take care <emphasis>not</emphasis> to use
29 <parameter>--strip-unneeded</parameter> on the libraries. The static
30 ones would be destroyed and the toolchain packages would need to be
31 built all over again.</para>
32
33 <para>To save more, remove the documentation:</para>
34
35<screen><userinput>rm -rf /tools/{,share}/{info,man,doc}</userinput></screen>
36
37 <para>Remove unneeded files:</para>
38
39<screen arch="default"><userinput>find /tools/{lib,libexec} -name \*.la -delete</userinput></screen>
40
41<screen arch="multilib"><userinput>find /tools/{lib{,{,x}32},libexec} -name \*.la -delete</userinput></screen>
42
43 <para>At this point, you should have at least 3 GB of free space in
44 <envar>$LFS</envar> that can be used to build and install Glibc and Gcc in
45 the next phase. If you can build and install Glibc, you can build and install
46 the rest too.</para>
47
48</sect1>
Note: See TracBrowser for help on using the repository browser.