免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1909 | 回复: 0
打印 上一主题 下一主题

如何让 busybox 1.15.0 在 Android 平台上运行 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-09-17 14:35 |只看该作者 |倒序浏览
Andorid 系统本身提供的命令工具很有限,对于开发人员来说,是需要一个功能强大的busybox滴.
如何让一个标准的busybox能够在Android 系统运行起来。可以有两种方法。
1. 将 busybox source code移植到Android 系统中, 然后编译出可执行文件。
2. 不移植busybox 到Android 系统中, 但让它能在Android 系统中运行。
对于第一种情况,需要将 busybox 的source code移植到Android 系统中,利用Android自带的toolchain来编译,但是,由于Android自带的toolchain与标准的arm-linux编译器不是完全兼容。
因此,工作量相对较大。这种方法可以使用Android 的系统 lib 库,从而编译出很小size的可执行文件。
对于第二种情况,则相对简单,但是需要考虑如下条件:
编译器支持的 ARM 指令集的版本 (是否一致)linux的系统调用 (是否一致)
当然,由于编译器环境不一致,因此,只能编译静态的可执行文件,不能对 lib 库有依赖。这样,编出的可执行文件的size 比较大。
方法:
1. 下载 busybox source code, 目前最新的版本是 1.15.0
http://www.busybox.net/
2. make menuconfig
使能如下项
Busybox Settings -> Build Options -> Build
BusyBox
as a static binary (no hared libs).
3. modify Makefile
设置编译器类型, 我用的是 arm-linux-4.1.1 toolchains.
CROSS_COMPILE
:= arm-linux-
同时将编译器的路径加入到系统PATH变量下
4. make
通过make 获得 busybox 可执行文件
5. 拷贝 busybox 到Android 运行环境中, 并增加可执行权限
chmod 777 busybox.
6. enjoy it.
for exmaple, get network device information.
./busybox ifconfig
或者通过如下命令来安装
./busybox --install
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/103613/showart_2054539.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP