交叉工具链小结

vim hello.c                      //首先建立一个.c的文件

gcc -static hello.c -o hello     //静态编译

//这个编译好的程序只能在linux上运行   ,下载到开发板上就不能运行了。

arm-linux-gcc    -o  是指定编译完成的文件名     -c    只编译不连接 //编译

arm-linux-ld -Tled.lds -o led.elf led.o          //led.lds是连接器脚本     ,把led.o等多个文件连接成led.elf.

arm-linux-readelf -a led.elf     //读取led.elf.的内容  -a是读取文件的全部内容    -d是查看文件运行时所需要的库文件

arm-linux-objdump -D -S hello >dump   //hello时elf格式的文件    objdump是反汇编指令   把elf格式的文件转换为汇编文件    >dump是把汇编文件保存到dump文件中。
 //为了使汇编语言在查看时能跟c语言对应起来   在用gcc编译的时候加上-g 这个选项

arm-linux-objcopy -O binary led.elf  led.bin              //把elf格式的文件转化为二进制文件 


你可能感兴趣的:(交叉工具链小结)