source: chapter05/stripping.xml@ 6702623

ml-11.0 multilib xry111/multilib
Last change on this file since 6702623 was b3f1ebb3, checked in by Xℹ Ruoyao <xry111@…>, 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
RevLine 
[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
21<screen arch="multilib"><userinput>strip --strip-debug /tools/lib{,{,x}32}/*
[3dc9543]22/usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
[673b0d8]23
[182d5d3]24 <para>These commands will skip a number of files, reporting that it does not
[3dc9543]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>
[81fd230]27
[b28fd35]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>
[81fd230]32
[776f1dc]33 <para>To save more, remove the documentation:</para>
[3d36131c]34
[776f1dc]35<screen><userinput>rm -rf /tools/{,share}/{info,man,doc}</userinput></screen>
[673b0d8]36
[a91de2aa]37 <para>Remove unneeded files:</para>
38
[b3f1ebb3]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>
[a91de2aa]42
[1fb7bae]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
[0b37960]46 the rest too.</para>
[81fd230]47
[673b0d8]48</sect1>
Note: See TracBrowser for help on using the repository browser.