在Android上开发也有两年的时间了,虽然一直都知道Android是构建在Linux Kernel上的手机操作系统,但在此之前一直没有实感。

直到第一次买了Android的手机,并请人帮我Root后这才如梦初醒,原来Android就真TM的是和Linux差不多的东西呀。

所以一直有个想法,就是让Android重新具备Linux应有的功能,当然完全实现是不太可能的,而且谷歌也不会准你这么干吧?


在Github社区上逛了一圈后,才知道有个叫Android VirtualTerminal的东西,它并不是直接调用Android的Linux内核,而是采用模拟的方法间接实现。

目前我测试过的Terminal有两个,一个是叫“Android Terminal Emulator” 另一个叫“Terminal IDE”,比较了一下,虽然前者使用人数最多,但明显后者更合适一些,理由主要有:

Terminal IDE 除了实现Linux terminal应该有的功能外,还附带了Vim和ssh,以及最重要的GIT, 而“Android Terminal Emulator ”仅仅只有vi,再有就是目前得知Terminal IDE可以配置GCC,而ATE还不清楚是否能安装GCC ,所以我毫不犹豫的选择了Terminal IDE


毕竟IDE 的扩展性远远优于ATE


安装Terminal IDE的方法和一般的APK没什么两样,安装好之后并不能直接使用GCC,因此你还需要下载GCC

IDE 和 GCC我已打包放在了一起,可以通过以下获取相关APK 和GCC

http://pan.baidu.com/share/link?shareid=255053&uk=3055041851


接下来是重头戏,配置你的系统


首先,你需要解压整个ZIP文件,并先将Terminal.apk文件安装至手机中,然后把GCC整个文件一起放置到(data/data/com.spartacusrex.spartacuside/files/system)中,因为这个操作可能需要用到root权限,所以如果你手机没有root的话,很可能连安装gcc这一步也做不到。


然后,你可以修改(data/data/com.spartacusrex.spartacuside/files/)目录下的.bashrc文件,当然也可以打开IDE,用vim修改(~/.bashrc),个人觉得用【vim ~/.bashrc 】更为简单一点 。

添加环境变量。

export CPLUS_INCLUDE_PATH=$IDESYSTEM/gcc/arm-linux-androideabi/c++/include:$CPLUS_INCLUDE_PATHexport C_INCLUDE_PATH=$IDESYSTEM/gcc/arm-linux-androideabi/include:$C_INCLUDE_PATHexport PATH=$IDESYSTEM/gcc/bin:$PATH

接着,将gcc/bin下的文件改一下名,arm-linux-androideabi-g++改为g++arm-linux-androideabi-gcc则改为gcc


完成之后,重启Terimnal IDE,方法是选择Shutdown,然后重新进入即可。


然后,你可以做个小小的测试,让键盘通过USB转Micro的转换口插在手机上,就像我做的那样,然后开始写个Hello World!吧!


哦~! 最好还是Hell Android吧!


祝你玩的愉快!



参考资料:

http://www.cnblogs.com/simpleyyt/archive/2012/11/24/GNU4Android.html

更多相关文章

  1. Android(安卓)平台基础开发简介
  2. 无法安装android sdk
  3. Android中“分享”功能的实现
  4. 关于获取Android中文件内容有感
  5. Android中“分享”功能的实现
  6. Android的init过程详解(一)
  7. Android中“分享”功能的实现
  8. Android百度地图之位置定位和附近查找代码简单实现 (上)
  9. Android虚拟平台的编译和整合

随机推荐

  1. Android(安卓)xml 转义字符
  2. Android(安卓)Home按键的监听与屏蔽方式
  3. Android的RemoteViews
  4. android 中 SharedPreferences 的使用!
  5. Android动画分类
  6. Android(安卓)Studio使用杂项
  7. android直接链接sqlserver数据库
  8. Android中更改SQLite数据库中的数据后,刷
  9. Android利用Jsoup解析html
  10. Android(安卓)获取当前时间及时间戳的互