android NDK的mk文件编写【1】—— 简单示例

*.mk文件中#开头的语句为注释语句
【sample】
文件目录结构
C:\hello-jni
             |–jni
                   |–Android.mk
                   |–Application.mk
                   |–hello.c
1. hello.c文件

#include <stdio.h>

int main(void)
{
	printf("%hello-jni\d");
	return 0;
}

2. Android.mk文件

LOCAL_PATH:=$(call my-dir) # 固定格式
include $(CLEAR_VARS)       # 固定格式
LOCAL_MODULE:=hello		   # 生成模块名称为hello,模块名称可任意修改
LOCAL_SRC_FILES:=hello.c   # 包括的源码文件,与Android.mk文件同级目录
include $(BUILD_EXECUTABLE) # 生成可执行的程序,生成的文件名为hello
# include $(BUILD_SHARED_LIBRARY) # 生成共享库,生成的文件名为libhello.so

3. Application.mk文件

APP_ABI:=all # all表示生成所以类型的目标文件:arm64-v8a、armeabi-v7a、x86、x86_64
# 可指定只生成某种类型的目标文件
# APP_ABI:=arm64-v8a
# APP_PLATFORM:=android-28 # 指定SDK API的版本

4.NDK编译
(1) cmd窗口目录切换到C:\hello-jni\jni
(2) cmd窗口执行NDK目录下的ndk-build.cmd(不需要输入参数)
最终目录结构如下
文件目录结构
C:\hello-jni
             |–jni
                   |–Android.mk
                   |–Application.mk
                   |–hello.c
             |–libs
             |–obj
最终生成的文件存放于libs文件夹中

【注】最终生成的libs和obj文件夹与Android.mk文件所在的目录jni文件夹同级,并不与Android.mk同级

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值