MirBSD manpage: strip(1)

STRIP(1)              GNU Development Tools              STRIP(1)


     strip - Discard symbols from object files.


     strip [-F bfdname |--target=bfdname]
           [-I bfdname |--input-target=bfdname]
           [-O bfdname |--output-target=bfdname]
           [-K symbolname |--keep-symbol=symbolname]
           [-N symbolname |--strip-symbol=symbolname]
           [-x|--discard-all] [-X |--discard-locals]
           [-R sectionname |--remove-section=sectionname]
           [-o file] [-p|--preserve-dates]
           [-v |--verbose] [-V|--version]
           [--help] [--info]


     GNU strip discards all symbols from object files objfile.
     The list of object files may include archives. At least one
     object file must be given.

     strip modifies the files named in its argument, rather than
     writing modified copies under different names.


     -F bfdname
         Treat the original objfile as a file with the object
         code format bfdname, and rewrite it in the same format.

         Show a summary of the options to strip and exit.

         Display a list showing all architectures and object
         formats available.

     -I bfdname
         Treat the original objfile as a file with the object
         code format bfdname.

     -O bfdname
         Replace objfile with a file in the output format

     -R sectionname

binutils-050707            2021-12-07                           1

STRIP(1)              GNU Development Tools              STRIP(1)

         Remove any section named sectionname from the output
         file.  This option may be given more than once.  Note
         that using this option inappropriately may make the
         output file unusable.

         Remove all symbols.

         Remove debugging symbols only.

         Remove all symbols that are not needed for relocation

     -K symbolname
         When stripping symbols, keep symbol symbolname even if
         it would normally be stripped.  This option may be given
         more than once.

     -N symbolname
         Remove symbol symbolname from the source file. This
         option may be given more than once, and may be combined
         with strip options other than -K.

     -o file
         Put the stripped output in file, rather than replacing
         the existing file.  When this argument is used, only one
         objfile argument may be specified.

         Preserve the access and modification dates of the file.

         Permit regular expressions in symbolnames used in other
         command line options.  The question mark (?), asterisk
         (*), backslash (\) and square brackets ([]) operators
         can be used anywhere in the symbol name.  If the first
         character of the symbol name is the exclamation point
         (!) then the sense of the switch is reversed for that
         symbol. For example:

                   -w -K !foo -K fo*

binutils-050707            2021-12-07                           2

STRIP(1)              GNU Development Tools              STRIP(1)

         would cause strip to only keep symbols that start with
         the letters ``fo'', but to discard the symbol ``foo''.

         Remove non-global symbols.

         Remove compiler-generated local symbols. (These usually
         start with L or ..)

         Strip a file, removing any sections that would be
         stripped by --strip-debug and leaving the debugging

         The intention is that this option will be used in
         conjunction with --add-gnu-debuglink to create a two
         part executable.  One a stripped binary which will
         occupy less space in RAM and in a distribution and the
         second a debugging information file which is only needed
         if debugging abilities are required.  The suggested
         procedure to create these files is as follows:

         1.<Link the executable as normal.  Assuming that is is
             "foo" then...

         1.<Run "objcopy --only-keep-debug foo foo.dbg" to>
             create a file containing the debugging info.

         1.<Run "objcopy --strip-debug foo" to create a>
             stripped executable.

         1.<Run "objcopy --add-gnu-debuglink=foo.dbg foo">
             to add a link to the debugging info into the
             stripped executable.

         Note - the choice of ".dbg" as an extension for the
         debug info file is arbitrary.  Also the
         "--only-keep-debug" step is optional.  You could instead
         do this:

         1.<Link the executable as normal.>
         1.<Copy "foo" to  "foo.full">
         1.<Run "strip --strip-debug foo">
         1.<Run "objcopy --add-gnu-debuglink=foo.full foo">

         ie the file pointed to by the --add-gnu-debuglink can be
         the full executable.  It does not have to be a file
         created by the --only-keep-debug switch.

binutils-050707            2021-12-07                           3

STRIP(1)              GNU Development Tools              STRIP(1)

         Show the version number for strip.

         Verbose output: list all object files modified.  In the
         case of archives, strip -v lists all members of the


     the Info entries for binutils.


     Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997,
     1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software
     Foundation, Inc.

     Permission is granted to copy, distribute and/or modify this
     document under the terms of the GNU Free Documentation
     License, Version 1.1 or any later version published by the
     Free Software Foundation; with no Invariant Sections, with
     no Front-Cover Texts, and with no Back-Cover Texts.  A copy
     of the license is included in the section entitled ``GNU
     Free Documentation License''.

binutils-050707            2021-12-07                           4

Generated on 2021-12-07 11:07:08 by $MirOS: src/scripts/roff2htm,v 1.103 2021/01/23 20:24:35 tg Exp $ — This product includes material provided by mirabilos.

These manual pages and other documentation are copyrighted by their respective writers; their sources are available at the project’s CVSweb, AnonCVS and other mirrors. The rest is Copyright © 2002–2021 MirBSD.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.