$ gcc -O2 -g -o p main.c swap.c
运行过程是: C 预编译器 cpp -> C 编译器 ccl -> 汇编器 as -> 链接器 ld
ELF 可重定位目标文件格式
字段 | 描述 |
---|---|
ELF 头 | 目标文件类型,字大小,字节顺序,其他 section 的元数据 |
.text | 已编译程序的机器码 |
.rodata |
查看 ELF 文件:
使用 objdump 命令,在 Linux 下直接搞,在 MAC 下要安装 binutils(命令 brew install binutils),然后所有的命令加前缀 g,比如这里使用 gobjdump
P455 - foo3.c bar3.c P458 - addvec.c multvec.c main2.c
Blogs:
1.探寻 ELF 文件内部: http://blog.csdn.net/vonzhoufz/article/details/44925439
2.创建并使用静态库(ar 命令) http://blog.csdn.net/vonzhoufz/article/details/44463977