一、环境搭建
vmware+Fedora;
arm-linux-gcc 交叉编译环境
三个压缩包:链接:https://pan.baidu.com/s/1YR7jXKLhRmEhDVQiOMkKyg 密码:0ah0
二、建立文件
1、在根目录下建立文件 cjj
[root@localhost /]# mkdir cjj
2、将三个压缩包放到 /cjj 目录下
3、在 cjj 目录下建立 rootfs 目录(必须是rootfs)
[root@localhost cjj]# mkdir rootfs
三、对 ncurses-5.9.tar.gz 的操作
1、解压 ncurses-5.9.tar.gz
[root@localhost cjj]# tar zxvf ncurses-5.9.tar.gz
2、进入 ncurses-5.9 文件
[root@localhost cjj]# cd ./ncurses-5.9/
3、运行 configure 文件
[root@localhost ncurses-5.9]# ./configure
4、编译
[root@localhost ncurses-5.9]# make
5、安装
[root@localhost ncurses-5.9]# make install
四、对 busybox-1.17.2-20101120.tgz 操作
1、解压:busybox-1.17.2-20101120.tgz
[root@localhost cjj]# tar zxvf busybox-1.17.2-20101120.tgz
2、进入 sybox-1.17.2
[root@localhost cjj]# cd busybox-1.17.2/
3、编辑 Makefile
[root@localhost busybox-1.17.2]# vi Makefile
4、修改:ARCH ?= arm
查找方式:(1)在vim里 按Esc键
(2)输入:/ARCH ?
(3)n:向下查找,N:向上查找
5、修改:CROSS_COMPILE ?=arm-linux-
6、qw 保存退出
7、执行
[root@localhost busybox-1.17.2]# make menuconfig
8、回车 确定
9、空格 取消选择
9、空格 选择这三个
10、Exit 退出
11、编译
[root@localhost cjj]# make
12、安装
[root@localhost busybox-1.17.2]# make install
注:这里出错可能是你的arm-linux-gcc交叉编译器没安装好
五、对 rootfs 进行操作
1、在 rootfs 里创建 rootdir
[root@localhost rootfs]# mkdir rootdir
2、将 busybox 里面的 _install 里面的文件 复制到 rootdir 里面
[root@localhost busybox-1.17.2]# cp _install/* /cjj/rootfs/rootdir/ -a
3、往 rootdir 里面添加 etc 目录
[root@localhost rootdir]# cp /cjj/busybox-1.17.2/examples/bootfloppy/etc/ ./ -a
4、创建 dev、 lib 目录
[root@localhost rootdir]# mkdir dev lib
5、在 dev 里面创建挂载点
[root@localhost rootdir]# cd ./dev/ [root@localhost dev]# mknod full c 1 7 [root@localhost dev]# mknod null c 1 3
6、在 rootdir 下的 usr 下创建 lib 目录
[root@localhost usr]# ls bin sbin [root@localhost usr]# mkdir lib
六、对 cramfs_exp.tar.bz2 进行操作
1、解压
[root@localhost cjj]# tar jxvf cramfs_exp.tar.bz2
2、将 cranfs 目录下的 lib 里面的文件复制到 rootdir 下的 lib 文件夹下
[root@localhost cramfs]# cp lib/* /cjj/rootfs/rootdir/lib/ -a
3、将 cranfs 目录下的 usrlib 里面的文件复制到 rootdir 目录下的 usr 下的 lib 里
[root@localhost cramfs]# cp ./usrlib/* /cjj/rootfs/rootdir/usr/lib/ -a
4、将cramfs目录下的 mkcramfs ,mkrootfs.sh 复制到 rootfs 目录下
[root@localhost cramfs]# cp mkrootfs.sh /cjj/rootfs/ -a [root@localhost cramfs]# cp mkcramfs /cjj/rootfs/ -a
5、进入rootfs 目录,执行 mkrootfs.sh ,出现文件 rootfs_up210 说明成功
[root@localhost rootfs]# ./mkrootfs.sh
6、根目录制作完成