|
Busybox简介 Busybox是一个集成了三百多个最常用Linux命令和工具的软件。Busybox包含了一些简单的工具,例如ls、cat和echo等等,还包含了一些更大、更复杂的工具,例grep、find、mount以及telnet。有些人将Busybox称为Linux工具里的瑞士军刀。简单的说Busybox就好像是个大工具箱,它集成压缩了Linux的许多工具和命令。 Busybox编译 一、源码下载 进入busybox网址https://busybox.net/,下载最新版本busybox1.32.1。本人没有测试过该版本的稳定性,本教程主要讲解如何使用busybox构建文件系统,如果有同学发现该版本存在稳定性问题,请及时更换以前旧版本。然后将busybox1.32.1拷贝到Ubuntu /home/elf/work/中,解压缩。 二、编译配置 在编译busybox之前需要对busybox进行配置,配置方法如下: (一)生成.config 进入busybox1.32.1目录后,使用命令: elf@ubuntu:~/work/busybox-1.32.1$ make menuconfig 产生.config配置文件 注意:default为默认配置,除了defconfig默认配置,另外还有allyesconfig(全选最大系统配置)和allnoconfig(最小系统配置),我们这里使用默认配置进行。 (二)配置 使用make menuconfig命令,按需修改配置: elf@ubuntu:~/work/busybox-1.32.1$ make menuconfig 进入图形界面之后,进入Setting目录下,添加交叉编译工具相关内容。在Cross compiler prefix中设置: arm-poky-linux-gnueabi- 在Path to sysroot中设置: /opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/cortexa7hf-neon-poky-linux-gnueabi 在Additional CFLAGS中设置: -O2 -pipe -march=armv7ve -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a7
仍然在Setting目录下,选中vi-style line editing commands项:
其他配置我们使用默认值,配置选项可根据需要自行增减,一路Exit,最后Yes保存退出。 三、编译 配置完成之后,开始进行编译,使用以下命令编译,设置交叉编译: . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi 进行编译,并将生成的rootfs安装到nfs_rootfs/rootfs文件夹下: elf@ubuntu:~/busybox-1.32.1$ make install CONFIG_PREFIX=/home/elf/nfs_rootfs/r\ootfs 编译完成:
然后进入到home/elf/nfs_rootfs/rootfs目录下,可以看到生成的目录文件: elf@ubuntu:~/nfs_rootfs/rootfs$ ls bin linuxrc sbin usr
|