九鼎创展论坛

标题: Android加入busybox工具 [打印本页]

作者: armeasy    时间: 2012-7-19 11:51
标题: Android加入busybox工具
1. 首先去busybox主页(http://busybox.net/downloads/) 下载最新版本的busybox源代码.

2. busybox源码目录.

配置:先执行$ make menuconfig命令对编译过程进行配置.  过程如下:

     Busybox Settings -> Build Options ->

     
  • Build BusyBox as a static binary (no shared libs) 这个要选上,因上这样子编译出来的busyBox才是可以独立运行的。
         (/home/jo/tool/arm-2008q3/bin/arm-none-linux-gnueabi-) Cross Compiler prefex 这是交叉编译器的"路径+前缀",要根据具体的情况来设置。
         Busybox Settings ->  General Configuration->
         
  • Don’t use /usr        这样子编译出来的busybox才不会安装到你主机的/usr目录下。一定要选上。

    编译:$make 编译成功后将得到一个名为busybox的可执行文件.

    3  先在Linux下安装busybox
    执行$ make install
    如果没有问题的话,会出现:
    .........
      ./_install/sbin/watchdog -> ../bin/busybox
      ./_install/sbin/zcip -> ../bin/busybox
    --------------------------------------------------
    You will probably need to make your busybox binary
    setuid root to ensure all configured applets will
    work properly.
    --------------------------------------------------
    表示安装成功
    在busybox源码目录下面的 _install目录下面将可以看到链接的方式,我这里将_install文件夹改名为busy_box(个人习惯)

    4 修改/init.rc文件
    添加(红色字体):export PATH /system/busy_box/bin:/sbin:/system/sbin:/system/bin:/system/xbin
    注释掉:#service console /system/bin/sh
    添加:service console /system/busy_box/bin/sh
                console

    5 将busy_box文件夹导入Android
       将Android终端连上PC,执行:$ adb push busy_box /system/

       或者直接将busy_box文件夹编入system.img,放在/system目录下面


    完成以上步骤,OK,正常的话,到这里你的终端就可以使用busy_box了。


    附加:
    上面说的情况可能会遇到init: cannot execve('/system/busy_box/bin/sh'): Permission denied
    的问题,可以通过在init.rc文件中修改/system/busy_box/bin/sh的权限
    #mount yaffs2 mtd@system /system ro remount   ro->rw
    mount yaffs2 mtd@system /system rw remount
    .......
    chmod 0777 /system/busy_box/bin/sh
    解决问题

    链接地址:http://huanyufeng123.blog.163.co ... 769420110106354320/


    作者: BUGvirus    时间: 2014-12-22 00:16
    支持支持!
    作者: siyrra    时间: 2015-1-13 10:05
    好方法,高明




    欢迎光临 九鼎创展论坛 (http://bbs.9tripod.com/) Powered by Discuz! X3.2