1、在http://www.busybox.net/downloads/获取源码包。
2、解压busybox-1.10.2.tar.bz2压缩包:
tar jxvf busybox-1.10.2.tar.bz2
3、make menuconfig或者make xconfig进行参数配置,界面如下:
其中,Busybox Setting是编译busybox相关的配置,需要注意选择,按回车键进入后有如下子菜单:
在Build Options菜单中有一个非常重要的选项:
Build Busybox as a static binary(no share libs)
它表示是否以静态链接方式编译Busybox。如果选项被选中,则busybox将被编译成静态链接的可执行文件,运行时不需要共享库支持,若系统中的文件系统安装了基本的共享库,则可以不选。
在Installation Options中有一个重要选项如下:
Busybox installation prefix
它表示busybox的安装目录,默认是./_install。即源码目录下的_install目录。可将其设为根文件系统的根目录。这个选项可以不改,在安装busybox时通过环境变量来指定安装目录。
一般来说,如果对根文件系统的大小不是很苛求,可以直接使用busybox的默认配置,命令如下:
make defconfig
4、配置完成后可以用下列命令进行编译:
make CORSS_COMPILE=arm-none-linux-gnueabi-
注:在编译过程中若遇到如下错误:
make[1]: *** [networking/libiproute/iptunnel.o] 错误 1
make: *** [networking/libiproute] 错误 2
解决办法:进入make menuconfig,在networking Utilities子菜单中,取消iptunnel选项。
5、安装时所用的命令:
make install CROSS_COMPILE=arm-none-linux-gnueabi-
注:实际上,只有/bin/busybox是一个真正的可执行文件,其他文件都是指向它的符号链接。busybox通过命令行参数可以确定启动程序时所用的命令,从而去执行相应的功能。
来源:CSDN
作者:yhf19881015
链接:https://blog.csdn.net/yhf19881015/article/details/7552818