tools:
gcc -E 预编译 生成.i文件
-S 编译 生成.s文件
-c 汇编 生成.o文件
-g 在生成的可执行程序中,加入调试信息.
优化选项
-ffunction-sections 将每个函数单独放到一个段中
-fdata-sections 将每个变量单独放到一个段中
-M 列出文件的依赖头文件(eg: gcc -M foo.c)
-MM 列出文件的依赖头文件, 但不包括系统文件(eg: stdio.h)
ar c 创建归档文件
r 添加新文件或替换已存在的旧文件(eg: ar r libNAME.a obj.o)
x 解压归档文件
d 删除归档文0件中的内容(eg: ar d libNAME.a obj.o)
s 生成归档索引,可以加快连接速度.( ranlib )
objdump -h 以16进制显示目标文件中各段的描述
-x
-s 以16进制显示目标文件中各段的内容
-d 显示代码段反汇编
-r 查看.o文件中的重定位信息
-f 显示目标文件的头信息
objcopy -j 抽取一个段
-R 删除一个段
size filename.o 显示pe文件的 .text代码段 .data数据段 .bss段的大小
readelf
nm filename.o 显示.o文件的符号表信息
c++filt 函数或变量符号 解释编译后的C++变量名或函数符号
eg: >>c++filt __ZN1N1C4funcEid
>>N::C::func(int, double)
strip Removes symbols and sections from files
strings 输出程序的可显字符
addr2line 根据地址可以查到对应的源文件和对应行(eg: addr2line -f address -e NAME.exe)
posted on 2011-09-14 15:07
Lshain 阅读(134)
评论(0) 编辑 收藏 引用 所属分类:
嵌入式