gcc工具链

1、gcc -g -c led.s -o led.o 编译文件

“ -g”选项是产生调试信息, GDB 能够使用这些调试信息进行代码调试。
“ -c”选项是编译源文件,但是不链接。
“ -o”选项是指定编译产生的文件名字。

2、ld -Ttext 0X87800000 led.o -o led.elf 链接文件

-Ttext 就是指定链接地址。
“ -o”选项指定链接生成的 elf 文件名,这里我们命名为 led.elf。
.map 文件就详细的描述了各个.o 文件都是链接到了什么地址。
“存储地址”就是可执行文件存储在哪里,可执行文件的存储地址可以随意选择。
“运行地址(链接地址)”就是代码运行的时候所处的地址。

3、objcopy -O binary -S -g led.elf led.bin 格式转换

“ -O”选项指定以什么格式输出,后面的“ binary”表示以二进制格式输出。
“ -S”表示不要复制源文件中的重定位信息和符号信息。
“ -g”表示不复制源文件中的调试信息。

4、objdump -D led.elf > led.dis 反汇编

“ -D”选项表示反汇编所有的段,反汇编完成以后就会在当前目录下出现一个名为 led.dis 文件。
发布了49 篇原创文章 · 获赞 30 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/liurunjiang/article/details/104791746