1.1. NUC972开发文档精简版
1.1.1. NUC972构建 之 百度压缩包
1.1.1.1. uboot编译
book@100ask:~/NUC970_BSP$ cd uboot/
book@100ask:~/NUC970_BSP/uboot$ make distclean
book@100ask:~/NUC970_BSP/uboot$ make nuc970_config
book@100ask:~/NUC970_BSP/uboot$ make all
下面是拷贝制作uImage镜像文件的工具,先拷贝到/usr/bin/,或者把book@100ask:~/NUC970_BSP/uboot/tools添加到坏境变量,二选一,否则在编译内核的时候无法会提示无法找到mkimage
1:拷贝命令如下
book@100ask:~/NUC970_BSP/uboot$ sudo cp ./tools/mkimage /usr/bin/
2:添加到环境变量
export PATH:=$PATH:/home/book/NUC970_BSP/uboot/tools
会在book@100ask:~/NUC970_BSP/uboot$目录下生成 u-boot.bin和子目录nand_spl目录下生产u-boot-spl.bin两个文件:
u-boot.bin:
u-boot-spl.bin:
1.1.1.2. 编译内核
book@100ask:~/NUC970_BSP$ cd linux-3.10.x/
book@100ask:~/NUC970_BSP/linux-3.10.x$ make nuc972_defconfig
book@100ask:~/NUC970_BSP/linux-3.10.x$ make uImage
book@100ask:~/NUC970_BSP/linux-3.10.x$ make dtbs
1.1.1.3. 编译文件系统
book@100ask:~/NUC970_BSP$ cd ./applications/yaffs2utils/
book@100ask:~/NUC970_BSP/applications/yaffs2utils$ make clean
book@100ask:~/NUC970_BSP/applications/yaffs2utils$ make
book@100ask:~/NUC970_BSP/applications/yaffs2utils$ ls
CHANGES list.h nand_ecclayout.h safe_rw.h unyaffs2.c
configs.h Makefile progress_bar.c safe_rw.o unyaffs2.o
COPYING mkyaffs2 progress_bar.h unspare2 version.h
endian_convert.c mkyaffs2.c progress_bar.o unspare2.c yaffs2
endian_convert.h mkyaffs2.o README unspare2.o
endian_convert.o mtd-abi.h safe_rw.c unyaffs2
/*************************************************************************
* 可以看到 生成的mkyaffs2 应用程序,下面会把他拷贝到 /bin目录
**************************************************************************/
book@100ask:~/NUC970_BSP/applications/yaffs2utils$ sudo cp ./mkyaffs2 /bin
book@100ask:~/NUC970_BSP/applications/yaffs2utils$ cd -
book@100ask:~/NUC970_BSP$ mkyaffs2 --inband-tags -p 2048 rootfs rootfs_yaffs2.img
book@100ask:~/NUC970_BSP$ ls
applications linux-3.10.x rootfs_48 rootfs_yaffs2.img
image rootfs rootfs_tomato uboot
此时已经生成了rootfs_yaffs2.img 文件系统
1.1.2. NUC972构建 之git源码
1.1.2.1. 编译uboot
book@100ask:~/NUC970$ cd NUC970_U-Boot_v2016.11
book@100ask:~/NUC970/NUC970_U-Boot_v2016.11$ make distclean
book@100ask:~/NUC970/NUC970_U-Boot_v2016.11$ nuc970_config
book@100ask:~/NUC970/NUC970_U-Boot_v2016.11$ make all
下面是拷贝制作uImage镜像文件的工具,先拷贝到/usr/bin/,或者把book@100ask:~/NUC970_BSP/uboot/tools添加到坏境变量,二选一,否则在编译内核的时候无法会提示无法找到mkimage
1:拷贝命令如下
book@100ask:~/NUC970/NUC970_U-Boot_v2016.11$ sudo cp ./tools/mkimage /usr/bin/
2:添加到环境变量
export PATH:=$PATH:/home/book/NUC970/NUC970_U-Boot_v2016.11/tools
1.1.2.2. 编译内核
book@100ask:~/NUC970$ cd NUC970_Linux_Kernel/
book@100ask:~/NUC970/NUC970_Linux_Kernel$ make nuc972_defconfig
book@100ask:~/NUC970/NUC970_Linux_Kernel$ make uImage
注释,编译make uImage会提示在book@100ask:~/NUC970目录下找不到 rootfs和image文件夹,自己手动创建即可
1.1.2.3. 编译文件系统
make clean
make nuvoton_nuc972_defconfig
make
If users need to install nuc970_bsp , user need to be root to run ‘./install_bsp.sh’ to install nuc970_bsp.
1.1.3. 使用mkimage工具打包镜像文件
1.1.3.1. crc32校验方式
uboot里面的宏定义关闭软件计算,比较慢
//#define CONFIG_NUC970_HW_CHECKSUM
mkimage -A arm -O linux -T kernel -S crc32 -a 0x7fc0 –e 0x8000 -d 970image 970image.ub
1.1.3.2. sh1校验方式
uboot里面的宏定义打开,硬件自动计算,比较快
#define CONFIG_NUC970_HW_CHECKSUM
mkimage -A arm -O linux -T kernel -S sha1 -a 0x7fc0 –e 0x8000 -d 970image 970image.ub
1.2. NUC972 开发文档详细版
