运行“Hello World!” Android上的ANSI C程序?

时间:2014-01-30 15:23:08

标签: android c

我不知道这是否可行,但假设我想运行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;
}

正如您所看到的,它应该创建一个文件作为“证明”它已成功运行。

1 个答案:

答案 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步,您的手机必须扎根