最近开始学习嵌入式linux,开发板买的时JZ2440,按教程,使用给的3.4.5版本的arm-linux-gcc编译linux 2.6.22.6是没有问题的。在尝试用最新的cross_compile出现了许多问题,最新的交叉编译是直接在ubuntu 上安装的,使用
sudo apt install gcc-arm-linux-gnueabi
安装完了之后先给CROSS_COMPILE赋值
sudo nano ~/.bashrc
在打开的文件里,在最后一行加上
export CROSS_COMPILE=arm-linux-gnueabi-
然后再
. ~/.bashrc
把CROSS_COMPILE永久赋值。
按教程,解压linux-2.6.22.6后,进入文件目录,然后打补丁,然后复制config_ok为.config后,要改四个文件:
第一个是根目录的Makefile:
有两个地方要修改
首先是416行的代码:
config %config: scripts_basic outputmakefile FORCE
$(Q)mkdir -p include/linux include/config
$(Q)$(MAKE) $(build)=scripts/kcon

本文介绍了在Ubuntu 18.04系统中,如何使用最新版的ARM交叉编译工具(7.3版本)来编译适用于JZ2440开发板的Linux内核2.6.22.6。详细步骤包括设置CROSS_COMPILE环境变量,修改Makefile、fpa11.inl、sys_arm.c和syscalls.h等文件,以及编译过程中对mkimage工具的安装和使用,最终成功生成uImage文件。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



