配置编译内核

(以3516a为例)

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. 第二步是配置内核的过程 arch表示目标环境 cross-compile表示使用的交叉编译器,menuconfig为图形界面配置菜单。
  4. 输入第二句后会出现图形界面,根据需要配置内核(大部分不需要);
  5. 3make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- uImage
  6. 编译内核生成uimage

image-20211213171619958.png

制作根文件系统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)。