// -- $ mkdir src; vim src/hello.c --
#include <stdio.h>
int main(void)
{
printf("Hello world!\n");
return 0;
}
// -- $ vim makefile --
all: hello
# -- strip --
readelf -S hello | grep debug -c
strip hello
readelf -S hello | grep debug -c
# -- objcopy --
size hello
mv hello hello.old
objcopy -R .comment -R .note.ABI-tag -R .gnu.version hello.old hello
size hello
hello: src/hello.c
gcc -o3 -g -o hello ./src/hello.c
clean:
rm -f hello*
// -- make --
$ make -i
gcc -o3 -g -o hello ./src/hello.c
# -- strip --
readelf -S hello | grep debug -c
9
strip hello
readelf -S hello | grep debug -c
0
make: [all] Error 1 (ignored)
# -- objcopy --
size hello
text data bss dec hex filename
896 264 8 1168 490 hello
mv hello hello.old
objcopy -R .comment -R .note.ABI-tag -R .gnu.version hello.old hello
size hello
text data bss dec hex filename
854 264 8 1126 466 hello
2009年6月26日
GNU Binutils strip & objcopy
GNU Binutils
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言