将 arm-linux-gcc-4.3.2.tgz 文件拷贝到 Ubuntu 的任意目录下。在Ubuntu 中新建一个终端,输入下面的命令安装交叉编译器:
#mkdir /usr/local/arm
(创建目录,若目录已存在会提示错误,跳过即可)
#tar zxvf arm-linux-gcc-4.3.2.tgz -C /
(编译器解压到/usr/local/arm)
进入目录,解压编译器的压缩包
完成后将在/usr/local/arm/目录下生成”4.3.2”目录。
编译器
这样,内核或其他应用程序均/usr/local/arm/4.3.2/bin/arm-none-linux-gnueabi-gcc
来指定使用该交叉编译器。例如,我们查看这个编译器的版本,可以运行
#/usr/local/arm/4.3.2/bin/arm-none-linux-gnueabi-gcc -v
编译器安装正确,会显示编译器的版本等信息,
命令未找到问题
提示错误:
arm-linux-gcc: Command not found
PATH里有/usr/local/arm/bin,/usr/local/arm/4.3.2/bin/下有arm-linux-gcc文件,但是make的时候,就是找不到arm-linux-gcc
原因:
export PATH=$PATH:/usr/local/arm/4.32/bin
是设置当前用户的PATH,而sudo执行make的时候,使用的是超级用户权限,那也就使用了超级用户的PATH(但是这个PATH里,并没有/usr/local/arm/4.3.2/bin)
解决方法:
先打开一个超级用户权限的shell:
sudo –s
在当前shell下,设置环境变量:
export PATH=$PATH:/usr/local/arm/4.3.2/bin
#关闭shell以后就不能使用,此时使用编辑 /etc/profile,在文件末端加上 export PATH=$PATH:/usr/local/arm/2.95.3/bin
再进入到kernel目录,make zImage,就可以找到arm-linux-gcc了
详细步骤
修改环境变量,把交叉编译器的路径加入到PATH。(有三种方法,强烈推荐使用方法一)
方法一:修改/etc/bash.bashrc文件
#vim /etc/bash.bashrc
在最后加上:
export PATH=$PATH:/usr/local/arm/4.3.2/bin
export PATH
(切忌copy,否则出现bash:export: `PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin:/usr/local/arm/4.3.2/bin':不是有效的标识符,要自己输入)
一般是在=这里出错
方法二:修改/etc/profile文件:
# vim /etc/profile
增加路径设置,在末尾添加如下,保存/etc/profile文件:
export PATH=$PATH:/usr/local/arm/3.4.1/bin
(切忌copy,否则出现bash:export: `PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin:/usr/local/arm/4.3.2/bin': 不是有效的标识符,要自己输入)
方法三:#exportPATH=$PATH:/usr/local/arm/3.4.1/bin
注:(这只能在当前的终端下才是有效的!)
立即使新的环境变量生效,不用重启电脑:
对应方法一:#source/etc/bash.bashrc
对应方法二:# source/etc/profile
检查是否将路径加入到PATH:
# echo$PATH
显示的内容中有/usr/local/arm/bin,说明已经将交叉编译器的路径加入PATH。至此,交叉编译环境安装完成。
7. arm-linux-gcc -v 显示配置则成功,说明环境已配置好了: