Android JNI入门第五篇——Android.mk分析

本文介绍了 Android.mk 文件的基本概念及使用方法,包括 LOCAL_PATH 的设置、全局变量的清零、库文件的链接配置等,并通过一个简单的 HelloJni 示例进行说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载请标明出处:
http://blog.youkuaiyun.com/michael1112/article/details/56671708

江东橘子的博客



Android.mk文件是在使用NDK编译C代码时必须的文件,Android.mk文件中描述了哪些C文件将被编译且指明了如何编译。掌握Android.mk文件的编写主要是掌握其里头将要使用的一些关键字,先来看一个简单的例子,这个例子使用的是android NDK带的

HellJni的例子。





 

LOCAL_PATH 是描述所有要编译的C文件所在的根目录,这边的赋值为$(call my-dir),代表根目录即为Android.mk所在的目录。

 

include $(CLEAR_VARS) 代表在使用NDK编译工具时对编译环境中所用到的全局变量清零,如LOCAL_MODULE,LOCAL_SRC_FILES等,因为在一次NDK编译过程中可能会多次调用Android.mk文件,中间用到的全局变量可能是变化的。关于这个问题看了下面比较复杂的例子可能就明白了。

 

LOCAL_MODULE 是最后生成库时的名字的一部分,给其加上前缀lib和后缀.so就是生成的共享库的名字libhello-jni.so。


LOCAL_LDFLAGS告诉链接器从哪里寻找库文件


LOCAL_SRC_FILES 指明要被编译的c文件的文件名

 

include $(BUILD_SHARED_LIBRARY) 指明NDK编译时将生成一些共享库


LOCAL_C_INCLUDES变量指定头文件


参考:

android编译系统makefile(Android.mk)写法

android makefile(android.mk)分析(序)

Android.mk的用法和基础


/**
* @author 江东橘子
* 邮箱:whtchl@126.com
*/


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值