交叉工具链是一些交叉工具的集合,谈到交叉工具,那什么是交叉工具?先来看一下我们嵌入式开发的模型,嵌入式开发模型一般由宿主机(PC)和目标板组成,在进行工程开发时,一般在宿主机上完成程序的开发编译,然后通过JATG,网络等下载工具下载至目标板上运行。这样就需要用到一些交叉工具。在嵌入式linux开发中,常用的交叉编译工具有交叉编译器、交叉链接器、交叉转换器、交叉ELF工具,交叉反汇编器。使用arm-linux-gcc 或arm-linux-ld 链接后生成的.elf文件无法在目标机上运行,需要转化成二进制文件,使用命令,arm-linux-objcopy -O binary xxx.elf xxx.bin -O 为[option] 指明生成的文件类型, xxx.elf为输出文件,xxx.bin为输出文件。 arm-linux-objdump为反汇编命令,在程序调试中,有时候需要查看其汇编代码,此时在使用arm-linux-gcc时加入-g option 使其产生调试信息, 在使用 arm-linux-objdump -D -S xxx >dump 这样就将C语言代码和其对应的汇编程序输出至dump文件中。arm-linux-readelf 为elf文件工具,arm-linux-readelf -a xxx.elf 可以得到文件的一些信息。arm-linux-readelf -d xxx 可以查看应用程序需要的库信息。 此外 file xxx 命令可以查看应用程序的信息 如大小端、运行的硬件平台等。
交叉工具链
最新推荐文章于 2021-10-06 01:28:40 发布