欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android NDK编译纯C程序

程序员文章站 2023-12-31 20:33:40
...


    怎么配置NDK就不说了,网上教程多的是,现在说一下怎么在不依赖Android Studio的情况下手动使用NDK编译可以直接在Android上运行的程序(不是库哦)。

随便找个目录,建一个文件夹,在这里命名为tubashu,进入目录,建一个hello.c文件,代码如下:


#include <stdio.h>

int main()
{
    printf("hello tubashu!\n");
    return 0;
}

然后再建一个文件Android.mk

LOCAL_PATH:=$(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE:=hello
LOCAL_SRC_FILES:=hello.c
include $(BUILD_EXECUTABLE)

然后打开CMD,进入文件目录,执行 ndk-build 命令,参数如下:

$ ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=./Android.mk

NDK_PROJECT_PATH 指定了需要编译的代码的工程目录,这里给出的是当前目录,APP_BUILD_SCRIPT给出的是Android makefile文件的路径

然后就会在目录里的lib目录里生成hello文件,用adb push到手机或模拟器里,执行就可以看到输出了。

C:\Users\tubashu>adb push E:\tubashu\obj\local\armeabi-v7a\hello /data/local/tmp/
E:\tubashu\obj\local\...shed. 0.7 MB/s (39252 bytes in 0.053s)

C:\Users\tubashu>adb shell
[email protected]:/ $ ./data/local/tmp/hello
/system/bin/sh: ./data/local/tmp/hello: can't execute: Permission denied
126|[email protected]:/ $ su
[email protected]:/ # chmod 777 /data/local/tmp/hello
[email protected]:/ # ./data/local/tmp/hello
hello tubashu!
[email protected]:/ #



相关标签: android ndk 纯C

上一篇:

下一篇: