24.13 Save Space in Executable Files with strip
Here's an example. I'll compile a C program and list it. Then I'll strip it and list it again. How much space you save depends on several factors, but you'll almost always save something.
If you know that you want a file stripped when you compile it, use cc with its -s option. If you use ld -say, in a makefile (28.13 ) - use the -s option there. Here's a shell script named stripper that finds all the unstripped executable files in your bin directory (4.2 ) and strips them. It's a quick way to save space on your account. (The same script, searching the whole filesystem, will save even more space for system administrators - but watch out for unusual filenames (9.22 ) ):
The find (17.2 ) finds all executable files that aren't setuid or setgid (24.14 ) and runs file (25.8 ) to get a description of each. The sed command skips shell scripts and other files that can't be stripped. sed searches for lines from file like: /usr/local/bin/xemacs:[TAB] with the word "executable" followed by "not stripped"-sed removes the colon, tab, and description, then passes the filename to strip . - |
|