Nat*_*urt 5 android gcc compilation toolchain android-ndk
我想编译并运行发送到我的AndroidApp的.c文件.我想在ARM的ARM .c文件上编译.我正在使用Android 4.2的Galaxy Nexus.我已经使用终端IDE安装了Android SDK和Android NDK,但是我不想从终端手动编译它.现在我已经下载了Android的GCC(android-gcc-4.4.0),并且不知道如何正确地将它添加到我的应用程序以及如何从Java代码中使用它进行编译.
我在互联网上已经阅读了很多关于此的内容,但是没有一个真正帮助我弄清楚,如何做到这一点
所以我的问题是:我如何使用Android应用程序中的Android/NDK工具链或任何其他工具链来编译然后运行.c文件.
编辑: 我现在把android-gcc解压缩到我的手机上的文件目录(data/data /.../ files).我想在手机上调用gcc编译器来编译.c文件.我试着用:
String[] cmds={MainActivity.this.getFilesDir() + "/android-gcc-4.4.0/bin/arm-eabi-gcc-4.4.0", "-c", file_path};
String result = "";
Process p = Runtime.getRuntime().exec(cmds);
BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((line = in.readLine()) != null) 
{
    result += line + "\n";
}
alert_dialog("Output", result); // Creates and displays an alert dialog
in.close();
}
catch (Exception e) 
{
    alert_dialog("Error", e.toString() + "\n" + e.getMessage());
}
这是我在Android上调用gcc的方法,但我只得到以下异常:java.io.IOException:运行exec()时出错.命令[...]工作目录:null环境null.
有没有人知道如何在电话上调用android-gcc编译器?
任何帮助表示赞赏和感谢
Sev*_*yev -2
这不是官方支持的场景;任何操作系统都不会允许非特权应用程序随意在设备上安装可执行代码。
在有root权限的手机上,你可能会有一些运气;但是,您仍然需要从头开始构建一个工具链。NDK 从来就不是为此而设计的。NDK 没有在 ARM 上运行的风格。
| 归档时间: | 
 | 
| 查看次数: | 4885 次 | 
| 最近记录: |