交叉编译工具使用

来源:互联网 发布:包络定理知乎 编辑:程序博客网 时间:2024/05/17 21:40

一 常用交叉工具

1.arm-linux-gcc  编译

Linux下的gcc大致一样,eg

arm-linux-gcc  hello.c  -o  hello

arm-linux-gcc  -static  hello.c  -o  hello  //使用静态库编译

arm-linux-gcc  -g  -c  led.S    

//-c 表示只编译不链接; 加个-g 是为了gdb 用,不然gdb用不

2.arm-linux-ld   链接

            使用连接器脚本   产生可执行的文件     依赖文件,可有多个

arm-linux-ld  -Tled.lds     -o   led.elf                led.o

3.arm-linux-readelf  elf文件工具

  arm-linux-readelf   -a  led.elf   //查看.elf文件的全部信息

(程序不能运行原因:用file 命令查看文件1.平台对不对,2.大小端对不对,3.库对不对)

  arm-linux-readelf   -d  led     //查看程序运行要使用的库。

4.arm-linux-objdump   反汇编器,查看汇编代码

arm-linux-objdump  -D  -S  hello  >dump       // -D  -S必须要的参数,>dump 将汇编代码放在dump这个文件里面,要把C语言代码附加一起,前面gcc编译要加 -g 这个参数

5.arm-linux-objcopy   .elf 文件转换成 .bin二进制文件

               标明输出文件格式  输入文件   输出文件

 arm-linux-objcopy  -O   binary     led.elf      led.bin

0 0
原创粉丝点击