strip (Unix)
This article needs additional citations for verification. (December 2020) |
Original author(s) | Dennis Ritchie (AT&T Bell Laboratories) |
---|---|
Developer(s) | Various open-source and commercial developers |
Initial release | June 12, 1972 |
Written in | C |
Operating system | Unix, Unix-like, Plan 9, Microsoft Windows |
Platform | Cross-platform |
Type | Command |
License | Plan 9: MIT License |
In Unix, Plan 9, and Unix-like operating systems, the strip
program removes information from executable binary programs and object files that is not essential or required for normal and correct execution, thus potentially resulting in better performance and sometimes significantly less disk space usage. The resulting file is a stripped binary.
Details
[edit]The information removed may consist of debugging and symbol information; however, the standard leaves the scope of the changes to the binary up to the implementer of the stripping program[citation needed].
Furthermore, the use of strip
can improve the security of the binary against reverse engineering as it would be comparatively more difficult to analyze a binary without the extra information that would otherwise be removed.
The effect of strip
can be achieved directly by the linker. For instance, in GNU Compiler Collection this option is "-s
".
The GNU Project ships an implementation of strip
as part of the GNU Binutils package. strip
has been ported to other operating systems including Microsoft Windows.
See also
[edit]- Dead code elimination
- Executable compression
- List of Unix commands
- Strings (Unix)
- Debug symbol
- Symbol table
References
[edit]- "strip", The Single UNIX Specification, Version 2, The Open Group, 1997
External links
[edit]- The Single UNIX Specification, Version 4 from The Open Group – Shell and Utilities Reference,
- Plan 9 Programmer's Manual, Volume 1 –