作者heoris (heoris)
看板LinuxDev
标题Re: [问题] 在android system的command line执行he …
时间Fri Feb 18 00:57:42 2011
Android 的standard C library 不使用 GNU C Library
而使用的是 Bionic C library 在android source code中的bionic资料夹有
完整的程式码
不使用gnu的原因一方面除了license issue问题以外 还有为了mobile device
hardware constraint考量 因此重写了C library 让android 在执行native code时
更有效率
如果你想要在Android shell环境底下执行native code时有两个方法
1. 使用Android build system 来完成
在原始码资料夹内新增自己的C程式码以及Android.mk
利用android build system 直接编译native C code
编译出来的执行挡会在/out/target/XXX/....底下
此执行挡link的函式库就是android 上的bionic C
所以直接adb push 上去後即可执行
2.最快最投机的方法
写好你的hello.c
直接用你现有的toolchain 进行static link
ex: arm-linux-gcc hello.c --static
编译出来的执行档因为是静态连结 直接丢到板子上就可以跑了
===========================
总结: 你如果只是要练习测试 不考虑效能和size问题的话 最快的方法就用2吧
试试看吧 有问题欢迎提出讨论 Thanks
Source From:
http://www.cdpda.org.tw
Blog:
http://www.cdpda.org.tw/blog
※ 引述《JUSTLOVEAYU (海费尔)》之铭言:
: 最近把android system porting到PXA 270板子上
: 我是根据http://www.mask.org.tw/demo.htm这个网站去做
: 现在我想写一个简单的hello word程式能在command line显示
: 如图:http://ppt.cc/bvku,就是在#字号後面显示出hello word
: 我原本想说编译一个java的hello word然後放到板子上执行就ok了
: 但似乎没那麽简单,我有上网查了一下,也有去书局看书
: 不过大多都是IDE加模拟器的教学
: 我想问的是,有没有简单的方式,让我的hello word可以在android system上执行
: 例如:一个文字编缉器加一个编译器就能完成我要的东西
: 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.32.113.190
1F:推 cam11505:抱歉我想顺便请问用第二点编译出来的native code 如何在 03/14 03:35
2F:→ cam11505:android app上面执行呢?我尝试加入一些套件再版子上 03/14 03:36
3F:→ cam11505:在console端上都可以执行 但在android app上参考这个网站 03/14 03:38