2010年9月7日 星期二

how to add busybox to android

When we use console on android file system,we often feel inconvenience.We can't type Backspeace、Tab function and have not some command instruction on android file system.

So,we can add busybox on android file system. But how to add busybox to android system?

We can download source in the URL
http://www.busybox.net/downloads/

new version is BusyBox 1.17.2
Download and extract it
Then we go to busybox folder and configure it.

mad@mad-desktop:~/LAB/busybox$ tar -jxvf busybox-1.17.2.tar.bz2
mad@mad-desktop:~/LAB/busybox$ cd busybox-1.17.2/
mad@mad-desktop:~/LAB/busybox/busybox-1.17.2$ make menuconfig


In order to get static binary,we must to select some item

Busybox Settings --->
Build Options --->
[*] Build BusyBox as a static binary (no shared libs)


Don't install BusyBox binary to your host /usr

Busybox Settings --->
Installation Options --->
[*] Don't use /usr


Then download cross compiler for arm and set up it in BusyBox
Our cross compiler use 2010q1-188 EABI.
We go to the url and download it
http://www.codesourcery.com/sgpp/lite/arm/portal/subscription?@template=lite


Busybox Settings --->
Build Options --->
() Cross Compiler prefix
/home/mad/LAB/omap/omap3_dvsdk/toolchain/2010q1-188/bin/arm-none-linux-gnueabi-


now we can select the command that we need
Default config are all selected,so Binary will be bigger
We cancel some unnecessary item
OK! make it


mad@mad-desktop:~/LAB/busybox/busybox-1.17.2$ make
mad@mad-desktop:~/LAB/busybox/busybox-1.17.2$ make install


We will get _install floder
go to _install floder
copy the bin and sbin floder to android file system


mad@mad-desktop:~/LAB/busybox/busybox-1.17.2$ cd _install
mad@mad-desktop:~/LAB/busybox/busybox-1.17.2/_install$ ls -al
total 16
drwxr-xr-x 4 mad mad 4096 2010-09-08 00:21 .
drwxr-xr-x 33 mad mad 4096 2010-09-08 00:21 ..
drwxr-xr-x 2 mad mad 4096 2010-09-08 00:35 bin
lrwxrwxrwx 1 mad mad 11 2010-09-08 00:21 linuxrc -> bin/busybox
drwxr-xr-x 2 mad mad 4096 2010-09-08 00:21 sbin

mad@mad-desktop:~/LAB/busybox/busybox-1.17.2/_install$ cp -rf ./bin/* ~/0xlab-androidfs/system/bin/
mad@mad-desktop:~/LAB/busybox/busybox-1.17.2/_install$ cp -rf ./sbin/* ~/0xlab-androidfs/system/sbin/


ok! we push android to board

use console and we can use Tab and BackSpace