227 - 问,objdump readelf nm等工具

227 - 问,objdump readelf nm等工具

看了《程序员的自我修养》前三章,简要记录下一些工具。

工具来源:gcc和binutils工具包

生成预编译后的文件

gcc -E hello.c -o hello.i

cpp hello.c > hello.i

输出汇编文件

gcc -S hello.c -o hello.s

从汇编生成object文件

as hello.s -o hello.o

gcc -c hello.s -o hello.o

包含调试信息

gcc -g -c hello.c

去掉调试信息

strip hello.o

查看文件类型

file hello.o

查看段基本信息

objdump -h hello.o

十六进制显示段,及反汇编

objdump -s -d hello.

显示符号信息

objdump -t hello.o

二进制文件添加到object文件

wps_clip_image-25567

查看各段长度

size hello.o

显示所有符号

nm hello.o

解析C++修饰过的名称

c++filt _ZN1N1C4funcEi

Windows API : UnDecorateSymbolName

其他

词法扫描 lex

语法分析 yacc

你可能感兴趣的:(227 - 问,objdump readelf nm等工具)