[Android]Android.mk学习(二)

本文详细介绍了Android.mk文件的各个关键配置项,包括import-module的用途,NDK_MODULE_PATH的设置,LOCAL_SRC_FILES的定义,以及LOCAL_C_INCLUDES、LOCAL_LDLIBS等变量的作用。同时,讲解了如何编译成静态库、动态库或可执行程序,以及头文件搜索路径的设定,帮助开发者理解Android NDK开发中的编译过程。
摘要由CSDN通过智能技术生成

import-module的功能

导入外部模块的.mk文件 ,和 include基本一样。
概念上的区别是include导入的是由我们自己写的.mk。而import-module导入的是外部库、外部模块提供的.mk。
import-module的使用:$(call import-module,相对路径)
include的路径是.mk文件的绝对路径。
而import是设置的路径指定到模块的.mk所在目录,是相对于NDK_MODULE_PATH中的路径列表的相对路径。

NDK_MODULE_PATH的配置

NDK_MODULE_PATH是一个很重要的变量,当android.mk中使用了$(call import-module,XXX)函数引入外部库文件时会用到,用以指示该往哪里去找这个文件

  1. NDK_MODULE_PATH 是一个环境变量,不是android.mk中设置的变量。
  2. NDK_MODULE_PATH多个路径用冒号分割。不是分号!且整个字符串中间不能有空格。格式不正确也会报错上面的错误的。
  3. 在import语句之前加入,$(call import-add-path,$(LOCAL_PATH)/platform/third_party/android/prebuilt) 将一个新的路径加入NDK_MODULE_PATH变量。

LOCAL_SRC_FILES := hello-jni.c

LOCAL_SRC_FILES变量必须包含将要打包如模块的C/C++ 源码。
不必列出头文件,build System 会自动帮我们找出依赖文件。
缺省的C++源码的扩展名为.cpp. 也可以修改

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值