3.1构建最小根文件系统——busybox

我们把busybox1.7.0压缩文件解压到虚拟机上

busybox里的INSTALL文件有教我们怎么编译

3.1构建最小根文件系统——busybox

我们执行make  menuconfig 会出现配置菜单

3.1构建最小根文件系统——busybox

我们是给嵌入式arm开发板编译的,那肯定有交叉编译工具,由于在menuconfig没有找到

我们在Makefile里设置

3.1构建最小根文件系统——busybox

3.1构建最小根文件系统——busybox

或者编译的时候输入 make CROSS_COMPILE=arm-linux-

下面参照《嵌入式开发手册》的menuconfig配置

3.1构建最小根文件系统——busybox

3.1构建最小根文件系统——busybox

配置完之后,执行make

这个时候千万不要执行make intall

不要执行make intall

不要执行make intall

因为我们是交叉编译,这样会把busybox编制到PC上

 

我们要做的是

  1. 创建文件系统的名称(如,first_root)

  2. 参考make install        # or make CONFIG_PREFIX=/path/from/root install

  3.     设置成

                make     CONFIG_PREFIX=绝对路径/first_root    install

     4.执行编译

 

编译后进去first_root看看,生成了四个文件

3.1构建最小根文件系统——busybox

四个文件都指向了busybox:

3.1构建最小根文件系统——busybox

 

 

回顾构建最小根文件系统所需的东西:

  1. 终端/dev/console  设置/dev/null (如果没有设置标准输入,输出,错误——>无底洞,输出看不到)

  2. 设置配置文化inittab(配置文件里指定的应用程序或默认配置)

  3. 需要c库(我们想我们自己建立的.c文件里的各种fopen,fread都是c库)

  4. init本身,即busybox   √

现在我们搞定了busybox,下一节构建/dev的东西