• linux2.6.30.4内核移植(5)——构建根文件系统(yaffs文件系统格式的镜像)


    一、首先编译并安装BusyBox

    这里使用的交叉编译器还是3.4.5.

    注意:编译内核、编译BusyBox以及编译文件系统中的所有应用程序的交叉编译器要使用同一个版本。

    1、获取BusyBox源码

    下载地址:http://www.busybox.net/downloads/

    这里下载 busybox-1.13.0.tar.bz2

    2、修改并配置BusyBox

    解压BusyBox,进入到其顶层目录,修改顶层Makefile:

    将164行修改为:

    CROSS_COMPILE ?= arm-linux-

    将189行修改为:

    ARCH ?= arm

    3、执行make menuconfig,进入配置单:

    image

    需要注意的配置选项如下:

    Busybox Settings—>General Configuration:

    image

    image

    image

    Busybox Settings—>Build Options:

    image

    image

    Busybox Settings—>Installation Options:

    image

    image

    Busybox Settings—>Busybox Library Tuning:

    image

    image

    image

    Linux Module Utilities—>

    image

    image

    image

    保存配置并推出配置单。

    4、执行命令make;make install编译安装Busybox。

    编译安装结束后,会在顶层目录下生成一个名为_install的目录,该目录内容如下:

    image

    二、构建根文件系统

    1、选择一个合适的地方创建一个目录root_2.6.30.4。

    2、复制Busybox中生成的_install目录下的bin、sbin、usr和linuxrc到root_2.6.30.4目录下。

    3、在root_2.6.30.4目录下新建dev、etc、home、lib、mnt、opt、proc、root、sddisk、sys、tmp、udisk、var和web目录,同时在原有的usr目录下新建lib和share目录。

    image

    4、添加内容:

    在dev目录下:

    image

    在etc目录下:

    这里要添加的内容比较多,所以就直接复制了一个天嵌做好的文件系统进行适当修改。

    5、使用mkyaffs2image软件制作跟文件系统:

    mkyaffs2image root_2.6.30.4/ root.bin

    将root.bin烧写到开发板,启动如下:

    image

  • 相关阅读:
    面向对象基础小结
    异常应用场景
    集合应用场景1:迭代器
    集合应用场景2——数据结构
    华为ce交换机 Bridge-Domain NVE
    linux 内核内置模块
    linux bridge 转发 ip
    iptables nat&conntrack
    loopback
    配置集中式网关部署方式的VXLAN示例(静态方式)
  • 原文地址:https://www.cnblogs.com/nufangrensheng/p/3671123.html
Copyright © 2020-2023  润新知