【Linux学习】嵌入式交叉编译环境arm-linux-gcc搭建


(1)首先选择一个路径用来存放arm-linux-gcc。我选用的是/home/book,并在下面建立一个文件夹arm-linux-gcc。

\

(2)利用cp EABI-4.3.3_Emdedsky_20100610.tar.bz2 arm-linux-gcc,将压缩包EABI-4.3.3_Emdedsky_20100610.tar.bz2复制到arm-linux-gcc中<喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+o6gzo6m94tG5RUFCSS00LjMuM19FbWRlZHNreV8yMDEwMDYxMC50YXIuYnoyPC9wPgo8cD48aW1nIHNyYz0="http://www.2cto.com/uploadfile/Collfiles/20140506/2014050608554314.png" alt="\">

记录下文件的存放目录:

\

(4)配置系统环境变量,把交叉环境工具链的路径添加到环境变量PATH中去,就可以在任意目录下使用这些工具。使用命令:

\

打开profile后,将交叉编译工具的路径添加到这个文件中,然后保存。

\

(5)使用下面的命令使环境变量生效

\

在终端输入:arm-linux后,双击Tab键后,出现下图,说明环境变量设置成功

\

交叉编译环境arm-linux-gcc搭建完成。之后在编译内核的时候,当输入:make后,出现一个错误提示:arm-linux-gcc:Command not found。但是编译环境确实是搭建完成了,最后从网上找到了原因:export PATH=$PATH:/home/book/arm-linux-gcc/opt/EmbedSky/4.3.3/bin是设置当前用户的PATH,而sudo执行make的时候,使用了超级用户权限,也就是使用了超级用户的PATH,但是超级用户的PATH中没有/home/book/arm-linux-gcc/opt/EmbedSky/4.3.3/bin。

解决办法:进入超级用户账户,在终端输入:export PATH=$PATH:/home/book/arm-linux-gcc/opt/EmbedSky/4.3.3/bin.再进入到内核存放目录


进行内核编译就可以了~~~

相关内容