刚开始是打算用4.5.1版本,后来用的是4.4.3版本,但是方法都是一个道理.之前一直失败,主要被坑在了环境变量的修改上了…一定得注意路径哪~
1下载文件:
安装包:
arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz
下载地址
http://pan.baidu.com/s/1i31c3Kp
2、开始安装(建议大家新建一个文件夹),然后将文件复制到新建的文件夹中
输入命令:
sudo tar xvzf arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz
安装完成后,输入ls命令,可以看到一个opt文件夹,如下图
3.修改环境变量
输入pwd命令,可查看当前路径的绝对路径
然后输入命令:
sudo gedit /etc/bash.bashrc
再在编辑器里:
关于环境变量问题:
环境变量是什么?例如path,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。
如果上面不加入环境变量,要运行arm-linux-gcc这个程序,则每次都要把arm-linux-gcc的完整路径写出来。/usr/local/arm/4.4.3/binarm-linux-gcc 文件名 -o 输出文件名
这样非常的麻烦,所以加到path里面,让电脑知道这个程序在哪里。
然后输入如下命令,更新环境变量
source /etc/bash.bashrc
4.检查是否将路径加入到PATH:
说明已经将交叉编译器的路径加入PATH。至此,交叉编译环境安装完成。
5.测试是否安装成功
在终端里输入arm-linux-gcc-v,这个命令会显示arm-linux-gcc信息和版本,如果出现以下信息则表示安装成功
至此,安装已经全部完成!
6 开发环境搭建
然后验证交叉编译工具链是否安装成功并且可以使用,如图九所示,随便找一个目录编辑一个hello源代码。
编辑好hello.c文件后,保存退出。然后使用交叉编译器对hello.c进行编译,并生成可执行文件hello,这里生成的hello文件并不能像gcc编译出来的文件那样直接使用“./hello”命令执行并显示内容, 如图12所示,因为它是一个二进制文件,只能下载到开发板上执行!
至此,搭建交叉编译环境结束!
7 编写hello.c程序,并用gcc进行编译,步骤如下:
1) 编辑并保存
gedit /home/usr/hello.c
2) 输入程序
# include<stdio.h>
int main()
{
printf("Hello forlinx!\n");
return 0;
}
3) 编译连接
gcc -o hello hello.c
4) 执行
./hello
运行结果如下: