一.下载arm linux gcc 4.3.2
http://pan.baidu.com/share/link?shareid=1575352696&uk=2754759285&fid=2185900163
二.安装arm linux gcc 4.3.2
1.复制arm-linux-gcc-4.3.2.tgz到根目录下tmp文件夹里
2.将文件解压到/usr/local目录下
解压命令tar xvzf arm-linux-gcc-4.3.2 -C /
注意以上命令必须要有-C而且是大写的,还有就是C与/之间有个空格
解压后的目录结构是这样的:/usr/local/arm/4.3.2
3.将路径/usr/local/arm/4.3.2/bin添加到环境变量PATH中
修改/root/.bashrc文件
#vim /root/.bashrc
在文件后面加上以下代码
export PATH=$PATH:/usr/local/arm/4.3.2/bin
为了保证成功还可以编辑/etc/profile文件
#vim /etc/profile
也是在后面加上以下代码
PATH=$PATH:/usr/local/arm/4.3.2/bin
保存后再执行命令
#source /etc/profile
使profile文件生效
4.测试安装是否成功
1)重启系统,输入命令
#arm-linux-gcc -v
如果安装成功将会输出 arm-linux-gcc的版本号
2)编译Hello World程序,测试交叉工具链
写下下面的Hello World程序,保存为hello.c
#include <stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}
执行下面的命令:
# arm-linux-gcc -o hello hello.c
源程序有错误的话会有提示,没有任何提示的话,就是通过了,就可以下载到ARM目标板上运行了!
接着可以输入filehello的命令,查看生成的hello文件的类型,要注意的是生成的可执行文件只能在ARM体系下运行,不能在其于X86的PC机上运行。
三.遇到的问题
如果安装的64位的Ubuntu的话,执行
#arm-linux-gcc -v
会遇到/usr/local/arm/4.3.2/bin/arm-linux-gcc: line 3: /usr/local/arm/4.3.2/bin/arm-none-linux-gnueabi-gcc: No such file or directory的问题
这时只要安装32位的兼容库就行了
#sudo apt-get install libncurses5:i386
在64位下,gcc默认编译代码位64位的,但是,如果你想编译位的,可以用gcc -m32选项,来设置。
不过,不幸的是,会出现错误,说找不到 /usr/include/features.h文件什么的。google一下,发现用这种方法:
sudo apt-get install g++-multilib
就可以了。
四.参考资料
http://www.360doc.com/content/11/1211/13/1317564_171441865.shtml
http://blog.****.net/doon/article/details/8053174
http://blog.****.net/fulinus/article/details/8648384
http://blog.sina.com.cn/s/blog_8f396e3701010hcx.html