我不知道这是否可行,但假设我想运行Hello World ANSI C程序,我该如何编译,部署和运行它?它甚至可能吗?
以下是我想到的程序的示例代码:
#include <stdio.h>
int main(void)
{
FILE *f = fopen("/storage/sdcard0/download/hello_android.txt", "w");
if (f) {
fprintf(f, "File created by an ANSI C program.");
fclose(f);
}
return 0;
}
正如您所看到的,它应该创建一个文件作为“证明”它已成功运行。
答案 0 :(得分:1)
<强> 1。编译强>
您只需知道您的硬件架构,找到正确的工具链并使用static
选项进行交叉编译。如果您不想使用static
选项,则必须将二进制文件与bionic
相关联,而不是libc
。这意味着你必须从头开始编译android,这将编译bionic
。然后,您可以将C
个文件添加到“android环境”中,创建一个Android.mk
文件并运行mm
。
<强> 2。部署强>
您必须使用adb
将二进制文件推送到手机。类似的东西:
adb push mybinary /data/
第3。运行强>
使用adb shell
启动shell,然后运行:
$ /data/mybinary
注意:要执行第2步和第3步,您的手机必须扎根