mini2440 linux内核编译与移植 课程设计,linux内核移植步骤-mini2440

建立使用 Fedora

9,版本太高,由于链接库的区别可能造成不可预料的错误。或者说配置相对复杂多了。本教程仅提供给刚接触内核的朋友,大牛们当路过就是,有发现什么错误还望指教。

① 修改顶层的Makefile

修改内容:

ARCH ?=

arm #架构一定要修改成arm,否则默认x86

CROSS_COMPILE ?=

arm-linux- #交叉编译工具选择arm-linux- (前提要建立好交叉编译环境,并且添加了环境变量)

,后面这些是顶层的Makefile中的部分内容,大家可看下实际是如何替换的

---------------------------------------------------------------------------------

AS =

$(CROSS_COMPILE)as ----> arm-linux-as 如不配置默认为as

LD =

$(CROSS_COMPILE)ld ----> arm-linux-ld 如不配置默认为ld

CC =

$(CROSS_COMPILE)gcc ----> arm-linux-gcc

如不配置默认为gcc

---------------------------------------------------------------------------------

后面的同理替换

② make mrproper #清除配置文件

③ make s3c2410_defconfig

#我们这里使用s3c2410_defconfig,即s3c2410的默认配置,内核里面有mini2440_defconfig,即mini2440的默认配置,编译没问题,但是在后面运行是执行reboot命令会出现问题,所以,建议使用s3c2410的默认配置。

④ make menuconfig

#需要手动进行配置,这步是很重要的一步,也是其他操作系统无法比拟的,我们可以在这个菜单界面下随意添加、删除模块,当然是针对于那些非关键模块。

配置内容:

选择 system Type

(可使用空格来切换 *代表静态编译成内核、M代表编译成模块(可在不重新编译内核的情况下将模块卸载掉)、不编译)

s3c2410 Machines 中保留SMDK2410/ A9M2410

s3c2440 Machines 中保留SMDK2440 和SMDK2440 with s3c2440 cpu

module

s3c2442 Machines 和 s3c2443 中的全部删除

⑤ 移植根文件系统模块

解压yaffs2.tar.gz

然后进入yaffs2目录中

运行 ./patch-ker.sh c 内核路径

⑥ 重新运行make menuconfig

进入File systems----->Miscellaneous

filesystems

添加yaffs2文件系统模块

⑦ 进入kernel Features 中选上EABI

⑧ 全部配置好后保存!!!

⑨ 运行 make zImage

⑩ 进入arch/arm/boot中找到zImage ,使用mkimage工具将zImage生成uImage

运行时会遇到的错误及解决方法,将在下期贴出。。。。。。。。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值