ubuntu16.04下编译ok6410 linux-3.0.1 arm-linux-gcc 4.3.2

使用官方提供的Linux内核,编译时出错。

 CC      kernel/panic.o
  CC      kernel/printk.o
  CC      kernel/cpu.o
  CC      kernel/exit.o
  CC      kernel/itimer.o
  TIMEC   kernel/timeconst.h
Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at kernel/timeconst.pl line 373.
/ok6410/linux-3.0.1/kernel/Makefile:140: recipe for target 'kernel/timeconst.h' failed
make[1]: *** [kernel/timeconst.h] Error 255
Makefile:945: recipe for target 'kernel' failed
make: *** [kernel] Error 2

 

将if (!defined(@val)) 改为if (!(@val)),再次编译就可以通过了。

编译uboot 

设置编译器

export PATH=/usr/local/arm/4.3.2/bin:$PATH
export TOOLCHAIN=/usr/local/arm/4.3.2
export TB_CC_PREFIX=arm-linux
export PKG_CONFIG_PREFIX=$TOOLCHAIN/arm-none-linux-gnueabi

查看arm-linux-gcc -v 是否为4.3.2

make forlinx_nand_ram256_config
make clean
make

完成后将生成u-boot.bin和mmc.bin

 

 编译内核,解压linux-3.0.1-v7.40-2014-09-13.tar.gz,进入内核目录

make zImage
编译结束后将在内核源码目录的 arch/arm/boot 中得到 Linux 内核映像文件:zImage

制作根文件系统rootfs.yaffs2

工具: mkyaffs2image-nand2g,FileSystem-Yaffs2-V5.40-2014-7-29.tar.gz都是官方提供的。

解压FileSystem-Yaffs2-V5.40-2014-7-29.tar.gz

./mkyaffs2image-nand2g FileSystem-Yaffs2 rootfs.yaffs2

以后要修改根文件系统里的内容就直接修改FileSystem-Yaffs2目录下,在使用上面的命令制作烧写的根文件系统。

完成后将得到所有烧写文件

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值