Linux零碎知识-elf文件
可以使用readelf命令读取elf文件,例如我们在linux上编译出来的可执行文件
readelf命令有很多参数可选
readelf -a 显示全部信息
readelf -s 显示符号表的相关信息
通常会将结果导出到文件,readelf -s test > test.list,便于查看
因项目需求,需要降低固件的大小
使用size 命令可以看固件代码段,数据段, bss段的大小
仅仅查看到各段的大小,对于降低代码段并不能提供有效的建议,因此需要查看elf文件中各函数以及变量占用的大小,这里就用到了readelf -s命令,但是发现当函数名过长的时候,显示不全。
例如我代码中有一个函数名为abcdefghijklmnopqrstuvwxyz(),可以看到图中的只显示到uvwxy,最后的z并没有显示出来
这时,可以使用readelf -s -W
路漫漫其修远兮,吾将上下而求索