1.下载配置编译busybox
进入https://busybox.net/下载busybox 1.70.0
tar -xjf busybox-1.70.0.tar.bz2 cd busybox-1.70.0 vi Makefle 找到下面这句话: ARCH ?= $(SUBARCH) CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%) 改为: ARCH ?= arm CROSS_COMPILE ?= arm-linux- 执行: make
2.安装
make //编译 mkdir /work/nfs_root/fs_mini_mdev_new //创建要安装的文件系统目录 make install CONFIG_PREFIX=/work/nfs_root/fs_mini_mdev_new //指定安装位置
3.安装glibc库
找到交叉编译位于usr/local/arm/4.3.2位置,
通过find -name lib,找到有以下几个lib

由于ARM9属于ARMv4T架构,所以拷贝上面两条红线处的lib到fs_mini_mdev_new里
mkdir /work/nfs_root/fs_mini_mdev_new/lib mkdir /work/nfs_root/fs_mini_mdev_new/usr/lib -p cp arm-none-linux-gnueabi/libc/armv4t/usr/lib/*.so* /work/nfs_root/fs_mini_mdev_new/usr/lib -d /* -d:保持链接 */ cp arm-none-linux-gnueabi/libc/armv4t/lib/*.so* /work/nfs_root/fs_mini_mdev_new/lib -d
4.构造etc目录
在etc目录下,需要构造以下3个文件
- etc/inittab : init进程会根据inittab文件里,来创建其它子进程,比如
- etc/init.d/rcS:脚本文件,里面用来执行命令,比如设置网卡,使用mount -a来装载/etc/fstab中的文件系统
- etc/fstab :里面保存要被挂载的哪个文件系统,比如proc、sysfs、tmpfs、devpts等系统
1)构造/etc/inittab
cd cd /work/nfs_root/fs_mini_mdev_new/ mkdir etc/ vi etc/inittab
添加以下几句:
::sysinit:/etc/init.d/rcS //内核启动时,执行/etc/init.d/rcS console::askfirst:-/bin/sh //启动console对应的-/bin/sh进程之前,等待用户按enter键 ::ctrlaltdel:/sbin/reboot //按下ctrl+alt+del组合键时,启动reboot命令 ::shutdown:/bin/umount -a -r //系统关机前,卸载所有文件系统
2)构造etc/init.d/rcS
mkdir etc/init.d/ vi etc/init.d/rcS
添加以下几句:
mount -a //装载/etc/fstab中的文件系统 echo /sbin/mdev > /proc/sys/kernel/hotplug //使/sbin/medv指向hotplug,从而支持热拔插 mdev -s //使用medv命令自动创建/dev下的所有设备节点
并给rcS加上可执行权限:
sudo chmod +x etc/init.d/rcS //使脚本rcS能够执行命令
3)构造etc/fstab
PS:使用mdev命令需要sysfs、tmpfs、devpts这3个文件系统的支持
mkdir proc/ //创建proc要挂载的目录 mkdir sys/ //创建sysfs要挂载的目录, mkdir dev/pts -p //创建devpts要挂载的目录 vi etc/fstab
添加以下几句
# device mount-point type options dump fsck order proc /proc proc defaults 0 0 tmpfs /tmp tmpfs defaults 0 0 sysfs /sys sysfs defaults 0 0 devpts /dev/pts devpts defaults 0 0
5.构造其它文件/目录
1)创建终端文件(dev/console和dev/null)
sudo mknod –m 660 dev/console c 5 1 sudo mknod –m 660 dev/null c 1 3
2)创建其它目录
mkdir mnt tmp root
6.制作jffs2映像文件
提前安装好mkfs.jffs2工具,使用mkfs.jffs2命令:
在放fs_mini_mdev_new文件夹的目录下: mkfs.jffs2 -n -s 2048 -e 128KiB -d fs_mini_mdev_new -o fs_mini_mdev_new.jffs2 //-n:表示每块不添加清除标记,-s:NAND的每页为2k,-e: NAND的每块为128kb //-d fs_mini_mdev_new:表示要制作的根文件系统文件 //-o fs_mini_mdev_new.jffs2:表示生成的映像文件
7.制作yaffs2映像文件
mkyaffs2image fs_mini_mdev_new fs_mini_mdev_new.yaffs2
1895

被折叠的 条评论
为什么被折叠?



