dalvikvm指令运行dex文件中的程序, 但是这两者本质上使用的语言都是java或者smali, 如果需要执行C语言程序,需要借助NDK编译成so库, 有没有不使用NDK而直接编译c原生程序然后在安卓设备中运行的方式呢...交叉编译
C语言是一门跨平台的语言,语言跨平台,但是程序不跨平台, 也就是说在windows平台下编译的程序只能在windows平台上执行,linux亦是如此, 为什么会出现这种情况呢?...,如
arm-none-eabi:这个是没有操作系统的,适用于ARM架构裸机,工具链提供商未知,嵌入式应用二进制接口,这个工具不支持那些跟操作系统关系密切的函数,比如fork(2)。..., 首先安卓设备大多采用的是ARM架构cpu, 系统采用的是linux系统, 如果我们想在安卓设备中进行本机编译的话,实现起来比较困难, 那么咱们可以借助交叉编译工具,实现在windows平台上编译出能够在...test.c -o test -static
因为Android 的 Linux 内核没有标准IO库函数,因此我们采用静态编译的方式进行编译 末尾-static必须要有
第三步 将编译后的可执行文件传至安卓设备