6.80. Stripping Igjen

Denne delen er valgfri. Hvis den tiltenkte brukeren ikke er en programmerer og ikke planlegger å feilsøke systemprogramvaren, kan systemstørrelsen reduseres med omtrent 90 MB ved å fjerne feilsøkingssymbolene fra binærfiler og biblioteker. Dette medfører ingen ulempe annet enn at du ikke lenger kan feilsøke programvaren.

De fleste som bruker kommandoene nevnt nedenfor, opplever ingen problemer. Det er imidlertid enkelt å lage en skrivefeil og gjøre det nye systemet ubrukelig, så før du kjører stripekommandoer, er det lurt å ta en sikkerhetskopi av LFS systemet i sin nåværende tilstand.

Plasser først feilsøkingssymbolene for utvalgte biblioteker i separate filer. Denne feilsøkingsinformasjonen er nødvendig hvis du kjører regresjonstester som bruker valgrind eller gdb senere i BLFS.

save_lib="ld-2.31.so libc-2.31.so libpthread-2.31.so libthread_db-1.0.so"

 

cd /lib

 

for LIB in $save_lib; do
      objcopy --only-keep-debug $LIB $LIB.dbg
      strip --strip-unneeded $LIB
      objcopy --add-gnu-debuglink=$LIB.dbg $LIB
done

 

save_usrlib="libquadmath.so.0.0.0 libstdc++.so.6.0.27
                       libitm.so.1.0.0 libatomic.so.1.2.0"

 

cd /usr/lib

 

for LIB in $save_usrlib; do
      objcopy --only-keep-debug $LIB $LIB.dbg
      strip --strip-unneeded $LIB
      objcopy --add-gnu-debuglink=$LIB.dbg $LIB
done

 

unset LIB save_lib save_usrlib

Før du utfører strippingen, må du være spesielt forsiktig med å sikre at ingen av binærfiler som skal fjernes kjører:

exec /tools/bin/bash

Nå kan binærfiler og biblioteker fjernes trygt:

/tools/bin/find /usr/lib -type f -name \*.a \

     -exec /tools/bin/strip --strip-debug {} ';'

 

/tools/bin/find /lib /usr/lib -type f \( -name \*.so* -a ! -name \*dbg \) \

     -exec /tools/bin/strip --strip-unneeded {} ';'

 

/tools/bin/find /{bin,sbin} /usr/{bin,sbin,libexec} -type f \
     -exec /tools/bin/strip --strip-all {} ';'

Et stort antall filer vil bli rapportert som at filformatet ikke gjenkjennes. Disse advarslene kan trygt ignoreres. Disse advarslene indikerer at disse filene er skript i stedet for binære filer.

Forrige Hjem Neste