移植前需要在宿主机上建立如图所示的ARM的交叉编译环境,建立交叉编译环境的目的在于使用普通的PC作为宿主机来调试目标开发板。建立ARM的交叉编译环境主要用到的开发工具有:binutils、gcc、glibc。
图 交叉编译环境
其中,binutils是二进制文件的处理工具,它主要包含了一些辅助开发工具,例如,objdump显示反汇编码、nm列出符号表、readelf显示elf文件信息及段信息、strip将不必要的代码去掉以减少可执行文件大小等。这些工具在嵌入式开发初期,尤其是在移植调试操作系统时非常有用。
gcc是编译工具,用来编译内核代码的工具,使用它可以编译汇编语言和C语言的程序,生成ARM的代码。
glibc是链接和运行库,它的编译需要指定编译器为ARM交叉编译器,否则编译出的glibc代码将会是同时有ARM和x86代码的混合体。所有需要用到的工具都可以通过源码自行编译,然后在宿主机上进行安装,就可以建立起ARM的交叉编译环境。
下面介绍如何利用pClibc构造一个目标平台为ARM的交叉编译器,下面是具体的步骤。
这样就完成了一个交叉编译器的构造。为了使用方便,在用户的shell程序里面加八交叉编译器的路径。具体方法是编辑/root/.bashrc,加入以下行:
以上信息表明已经成功安装好arm-linux-gcc了。实际上除了arm-linux-gcc,以上过程同时还安装了arm-linux-ld(连接器)、arm-linux-ar(汇编器)等工具。可以在命令行模式下输入#arm-linux-,此时按键盘上的TAB键查看所有以arm-linux-开头的可执行文件。
欢迎转载,信息来源维库电子市场网(www.dzsc.com)
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。