1. 标准C程序如何移植到android平台需要什么编译参数,我用的是arm-eabi-gcc工具链
首先 你编译的程序 用cat命令看 目录应该是/lib/libc.so.6 而Android 是 /system/lib/libc.so
本来已经有C库了 但是 我这里没有用~ 你可以在 你的PC安装机子上找到 交叉编译arm-eabi-gcc或 arm-linux-gcc安装目录下的arm/4.3.2/..../libc/lib/libc2.8.so好像 是这个 有一个是libc.so.6 这个是一个连接 不是文件 查看属性 看下连接的文件应该是 那个libc2.8.so (放心它是arm版的)拷贝这个文件到 安卓/system/lib/去 然后
用RE文件 为它添加一个 连接 /system/lib/libc.so.6 就可以了
这样 标准库是被移植去了 但是 你的应用程序 有可能使用的是 /lib/libc.so.6 不是 /system/lib/libc.so.6
先测试不行的话 就把 /system/lib 连接为/lib
2. 安卓系统后缀为.mk的文件是什么属性的
.mk后缀名文件类型:Makefile扩展名为.mk的文件是一个开发文件。Makefile规则如下所示目标:依赖文件列表<Tab>命令列表1、目标通常是要产生的文件名称,目标可以是可执行文件或obj文件,也可是一个动作的名称.2、依赖文件是用来输入从而产生目标的文件.一个目标通常有几个依赖文件.3、命令是make执行的动作,一个规则可以含几个命令,每个命令占一行.例1:简单的Makefile实例main: main.cmain.hgcc-o main main.c
3. 安卓系统有没有一个手机软件可以打代码,如同Visual C++6.0那样的
安卓系统中的c4droid是一个可以打代码的手机软件,如同Visual C++ 6.0那样编辑编译C程序。
下面是详细信息
软件名称:c4droid
软件语言:中/英 文
软件大小:1.7M
应用平台:Android 2.2以上版本
c4droid是款Android设备上的C/C++程序编译器,默认以tcc(tiny c compiler)为编译器,可以选择安装gcc插件(20mb,只有root用户可以使用),选用gcc后,可以用sdl(简单直控媒体层库,需安装sdl plugin for c4droid)和qt(nokia官方开发库,需安装sdl plugin for c4droid)。也可以开发native android app(需安装sdl plugin for c4droid),就像google ndk一样。软件支持代码高亮,编译时间随cpu主频而定,主频越高编译越快。gcc插件版本4.7.2提供了示列程序,包含sdl,android native,qt和命令行测试程序源码。
4. 有没装好GCC for droid和SDL的C4droid吖他丫的,我装了好多次,可是一点效果也
自己网络"GCC_SDL_FOR-C4droid"跳出有直接下载两个最新插件(GCC。。。SDL。。)的地
址,在该页面也有下载c4droid主程序的下载链接。下载后先安装插件,成功后安装主程序,插件会自动解压,解压时自动弹出一个窗口,点击yes就OK了,自动把插件数据解压到主程序了。编写程宇时在菜单/preference/setting complied/G ,编译C ,当然也可能会因为手机不一样,有些最新版本运行不了,或者是GCC和SDL只能有一个正常,也或者c4可用,但两个插件用不了,这样换旧的插件版本试一下,因为现在网上比较乱,有些软件是大神改的,又或者手机原因,自己找吧,一般安卓手机都可以用的!
5. 如何在安卓虚拟机里安装vmware tools
Android也是Linux,必须有root,所以有两种方式:
(如果Android虚拟机是x86那就只能用第二种方法,但不需要gcc for ARM,直接gcc就可以了)
(1)在Android上直接安装:
Step 1. 安装GCC,需要到安卓应用市场比如Google Play下载GCC For Droid plugin的应用,里面解开有gcc
Step 2. 安装Terminal应用
Step 3. 编译Perl
Step 4. 将NDK里对应平台的头文件复制进来
Step 5. 下载一份Android源代码复制进来
Step 6. 将vmware tools的tar.gz解开,开始安装,会提示手动编译Kernel mole
(2)在Ubuntu上或Windows上编译后安装到Android
Step 1. 下载gcc for ARM(NDK里就有)
Step 2. 下载Android源代码
Step 3. 将vmware tools for linux的tar.gz解开,把kernel mole的源代码复制出来编译
之后就是用busybox 的insmod命令加载kernel mole;如果想每次自动启动,需要手动修改android rom的启动文件,或者写个apk service让它自动加载。