1.1 交叉编译器介绍
在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,我们就称这种编译器支持交叉编译。这个编译过程就叫交叉编译。简单地说,就是在一个平台上生成另一个平台上的可执行代码,而这种工具就是交叉编译器(cross compiler)。
1.2 搭建交叉编译环境
1.2.1 实验环境
交叉编译工具:arm-linux- 4.2.2
编译平台:Ubuntu10.10
开发板类型:UT-S3C6410
1.2.2 搭建步骤
1) 在/usr/local/下建立交叉编译器的安装目录arm:
sudo mkdir /usr/local/arm
2)将下载的交叉编译器包解压到/usr/local/arm目录下:
sudo tar jxvf cross-4.2.2-eabi.tar.bz2 -C /usr/local/arm/
3)解压成功后,修改PATH环境变量:
sudo vim /etc/profile
在文件为加入交叉编译器arm-linux-所在的路径:
export PATH=$PATH:/usr/local/arm/4.2.2-eabi/usr/bin
然后退出vim。
4) 更新一下配置文件/etc/profile:
source /etc/profile
5)检测是否安装成功:
现在就可以使用交叉编译器了,写一个测试程序helloworld,交叉编译下,看是否能在开发板上运行。
i. 交叉编译测试程序
arm-linux-gcc helloworld.c -o helloworld
ii.把生成的可执行文件helloworld复制到NFS的挂载目录下:
sudo cp ./helloworld /nfsboot
注意:本实验中开发板使用NFS挂载rootfs,nfsboot是NFS的挂载目录。
iii.在超级终端上运行:
./helloworld
执行结果: