编译文件
arm-linux-gnueabihf-gcc
eg:arm-linux-gnueabihf-gcc -g -c led.s -o led.o
//-g选项是产生调试信息,GDB调试能够利用这些信息进行调试
//-c选项是编译源文件,但是不产生连接
//-o是指定编译产生的文件名字,即指定编译后产生led.o文件
链接文件
arm-linux-gnueabihf-ld就是将众多的.o文件链接到一个指定的链接位置
arm-linux-guneabihf-ld -Ttext 0X87800000 led.o -o led.elf
//-Text就是指定链接位置
//-o选型指定链接生成的elf文件名,这里我们命名为led.elf
格式转换
arm-linux-guneabihf-objcopy -O binary -S -g led.elf led.bin
//-O指定以什么格式输出,即指定以二进制输出
//-S表示不要复制源文件中的重定位信息和符号信息
//-g表示不复制源文件中的调试信息
反汇编
arm-linux-guneabihf-objdump -D led.elf > led.dis
//-D表示反汇编所有的段,反汇编完成以后会出现led.dis文件