Ubuntu 9.04 arm-linux-gcc编译环境
默认分类 2009-05-03 22:45 阅读64 评论0
字号: 大大 中中 小小
最近一直在弄linux系统,由于需要进行嵌入式操作,所以必须要安装交叉编译环境。下面是我安装交叉编译环境的过程,系统用的是UBUNTU,目标板用的是AT91RM9200.虽然简单,但对初学者应该有些帮助
安装交叉编译环境IC开发网 RP;Kat8O4p
1. 安装标准的C开发环境,由于Ubuntu安装默认是不安装的,所以需要先安装一下:
3zZlR^5W+X0sudo apt-get install gcc g++ libgcc1 libg++ make gdb
'Z.t%Q(I4k`x02.安装交叉编译器
*G;M)B9w/ts0从ftp://ftp.arm.linux.org.uk/pub/armlinux/toolchain/下载交叉编译器cross-3.2.tar.bz2,然后解压sudo tar jxvf /home/engelbert/cross-3.2.tar.bz2(/home/engelbert/为你存放cross-3.2.tar.bz2的路径),然后将解压后的文件都转移到/usr/local/下,
?6r3a$x eT @,Fz0sudo mv /home/engelbert/usr/local/arm /usr/local
S0ZV<1m k RRt3u03.把交叉编译器的路径加入到PATHIC开发网I rYF$g,g7C~
sudo vi /etc/bash.bashrcIC开发网?q.i"MSOYR
在后面加入如下代码:
*pT RrM6nY^0if [ -d /usr/local/arm ] ; then
W1U%U4`cT0 PATH=/usr/local/arm/bin:"${PATH}"
~9EW(gQ!_C%M-bb0fiIC开发网 g P-F6C6W n M
4.使新的环境变量生效
?R(S!D*[B,WQ0# source /etc/profile
Z n&v!Jo.U.L05.检查是否将路径加入PATH的方法:IC开发网 c/QpVb[
echo $PATH
u/C:|!k~b?f&m I0如果显示的内容中有/usr/local/arm/bin,说明已经将交叉编译器的路径加入PATHIC开发网_\d$b/Ei!W
自此,交叉编译环境安装完成。IC开发网w!vQ/o/Tn \t
下面我们就来测试一个简单的例子。
lu&X2pZ r_L)t3l0/*Hello.c*/IC开发网s6AT,z{)w4Cw? g
#include <stdio.h>
main()IC开发网7J `+U&cqL!]
{IC开发网9\%cE(X3jSBj
printf(hello ubuntu!\n);IC开发网 K \?S#mt;na
}
@h.Uc H w0程序输好以后确认无误,保存。进入程序文件所在目录IC开发网mb^C V
arm-linux-gcc hello.c –o hello(-o 可以理解为“目标为生成”)IC开发网~b$lh-yjUm
arm-linux-gcc是第一次出现,有人可能会问这个哪里来的,不妨打开刚才安装的交叉编译工具目录/usr/local/arm-linux/arm-linux/bin/可以发现里面有一个arm-linux-gcc文件,这个就是针对arm的 CPU的gcc编译器了。以后用其它编译工具链式也可以通过这种方法看看其编译器是什么了。编译好了以后就可以下载到目标机进行测试了。当然也可以先在 PC机上测试正误。用gcc hello.c –o hello就可以生成PC机上程序了,在运行./hello 就可以发现终端显示hello!字样。用arm-linux-gcc编译的程序在PC机上是不能运行的,运行后给出错误报告:无法执行二进制文件。说明经过交叉编译环境编译出的文件是硬件可执行的二进制代码文件。 |