arm交叉编译环境安装

2019-07-13 09:28发布

把交叉编译工具安装包arm-2007q1-10-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2解压至/opt 目录下。

tar -jxvf arm-2007q1-10-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -C /opt

修改当前用户(如root)根目录下的.bashrc 文件,将交叉编译器的路径加入到系统的环境变量中

vi ~/.bashrc

在文件最后一行添加如下命令行,然后保存退出:

export PATH=/opt/arm-2007q1/bin/:$PATH

执行下面命令来更新环境变量

source ~/.bashrc

测试环境变量来检查交叉编译工具是否安装成功(查看版本)

arm-none-linux-gnueabi-gcc -v

编译问题

recipe for target ‘kernel’

Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at kernel/timeconst.pl line 373. /opt/ARM/mini6410/linux/linux-2.6.38/kernel/Makefile:140: recipe for target 'kernel/timeconst.h' failed make[1]: *** [kernel/timeconst.h] Error 255 Makefile:916: recipe for target 'kernel' failed make: *** [kernel] Error 2 解决方法:
gedit kernel/timeconst.pl
找到373行,删除下列代码 @val = @{$canned_values{$hz}}; if (!defined(@val)) { @val = compute_values($hz); } 在output前面加入 $cv = $canned_values{$hz}; @val = defined($cv) ? @$cv : compute_values($hz);