配置编译内核

(以3516a为例)

1 .下载内核源码

已有3516内核源码

在Linux虚拟机下进入内核源码所在目录

(/文档/3516a/Hi3516AV100/Hi3516A_SDK_V1.0.5.0/osdrv/opensource/kernel/linux-3.4.y)

  1. 1cp arch/arm/configs/hi3516a_full_defconfig .config
  2. 2sudo make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- menuconfig
  3. //
  4. 3make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- uImage
  5. 编译内核生成uimage

第二步是配置内核的过程 arch表示目标环境 cross-compile表示使用的交叉编译器,menuconfig为图形界面配置菜单。
输入第二句后会出现图形界面,根据需要配置内核(大部分不需要);

3516编译内核和根文件系统的制作 - 图1

制作根文件系统rootfs

3516a为例

根据之前做好的根文件目录(D:\项目资料\开发板资料\3516A\文件系统下的压缩包),在此基础上添加删减

将文件系统压缩包复制到Linux端解压后,在root下添加了lc文件夹;

使用命令生成映像

  1. mkfs.jffs2 -d ./rootfs_uclibc_new/ -l -e 0x10000 -o rootfs_64k_new.jffs2
  2. -d 目录 -l 小端模式 , -e 指定擦除块大小 . -o 输出映像文件名 .

将所得到的根文件映像,替换掉原来的,再次烧录进开发板。

(D:\项目资料\开发板资料\3516A\3516A开发板资料\Hi3516A_SDI_IN 开发板资料\文件系统\image_uclibc)

该文件夹有编译好的fastboot(uboot-hi3516a-new.bin),kernel(uimage) ,rootfs(rootfs_hi3516a_64k.jffs2)。