strip is a shell command for removing information from binary executable programs and object files that is not required for execution – typically including debugging data, symbol tables, relocation information, and other metadata. The resulting file generally has a smaller size and potentially has increased performance. The resulting file is known as a stripped binary.[1]

strip
Original author(s)Dennis Ritchie
(AT&T Bell Laboratories)
Developer(s)Various open-source and commercial developers
Initial releaseJune 12, 1972; 53 years ago (1972-06-12)
Written inC
Operating systemUnix, Unix-like, Plan 9, Microsoft Windows
PlatformCross-platform
TypeCommand
LicensePlan 9: MIT License

Using strip can enhance the security of an executable by making it more difficult to reverse-engineer. The absence of symbol and debugging information complicates the program analysis of the binary.

The effect of strip can also be achieved via a compiler or linker to perform the same process.[2] For example, in the GNU C compiler (gcc), this is done via the -s option.[2]

The command is available in Unix, Plan 9, and Unix-like systems. The GNU Project includes an implementation in the GNU Binutils package. The command has been implemented in to other operating systems including Windows.

See also

edit

References

edit
  1. ^ "Linux Strip Command". www.computerhope.com. Retrieved 2024-10-01.
  2. ^ a b "What is the difference between "gcc -s" and a "strip" command?". Stack Overflow. Retrieved 2024-10-01.
edit