Android makefile
示例
/** Android.mk文件必须从这一行定义开始,my-dir宏是build系统自带的函数,返回当前目录 */
LOCAL_PATH := $(call my-dir)
/** CLEAR_VARS是build系统自带的变量,指示makefile脚本清除所有LOCAL_XXX变量,除了LOCAL_PATH */
include $(CLEAR_VARS)
/** LOCAL_MODULE变量必须被定义以区分模块,所以名字必须是唯一的且不能包含任何空白,build系统会据此自动生成Lib文件名,比如,libhello-jni.so */
LOCAL_MODULE := hello-jni
/** LOCAL_SRC_FILES变量必须包含C/C++的源代码列表,不要列出头文件和include文件,因为build系统会自动检查每个文件的依赖 */
LOCAL_SRC_FILES := hello-jni.c
/** BUILD_SHARED_LIBRARY是build系统自带的变量,指示makefile脚本收集自最近一次CLEAR_VARS之后我们定义的所有LOCAL_XXX变量,并且指示生成的是Shared Library。与之相对的变量是BUILD_STATIC_LIBRARY */
include $(BUILD_SHARED_LIBRARY)
NOTE:以LOCAL_、PRIVATE_、NDK_、APP_开头的变量以及小写字母的变量时build系统的保留字,建议使用MY_<prefix>来定义自己的变量。
NDK宏函数
调用:$(call <function>)
my-dir:返回当前Android.mk文件所在的目录
all-subdir-makefiles:返回在当前my-dir的所有子目录中的Android.mk文件的列表
this-makefile:返回当前Android.mk的路径
parent-makefile:返回上一层Android.mk的路径
grand-parent-makefile:
模块描述变量
LOCAL_PATH:当前基准路径
LOCAL_MODULE:模块名称,必须唯一
LOCAL_SRC_FILES:构建模块的源文件列表
LOCAL_CPP_EXTENSION:C++文件扩展名,默认为.cpp
LOCAL_C_INCLUDES:相对于NDK根路径的C include文件列表
LOCAL_CFLAGS:C和C++的编译标志
LOCAL_CXXFLAGS:LOCAL_CPPFLAGS的别名
LOCAL_CPPFLAGS:C++的编译标志
LOCAL_STATIC_LIBRARIES:链接的static libraries列表,仅对shared library有效
LOCAL_SHARED_LIBRARIES:运行时依赖的shared libraries列表
LOCAL_LDLIBS:额外的连接标志,比如链接系统库文件libz.o,则LOCAL_LDLIBS:=-lz
LOCAL_ALLOW_UNDEFINED_SYMBOLS:允许没有定义的符号
LOCAL_ARM_MODE、LOCAL_ARM_NEON、LOCAL_DISABLE_NO_EXECUTE看不懂
转载于:https://www.cnblogs.com/babyking/archive/2011/03/14/1984112.html
Android makefile相关推荐
- Android makefile文件解析
Android makefile文件解析 Android编译过程详解 编译步骤 Android的编译步骤包括三步: 1.通过source build/envsetup.sh命令将sh文件中的命令加载到 ...
- Android Makefile中inherit-product函数和include的区别
在 Android Makefile中inherit-product函数和include都是执行某个文件. include 使用: include device/mediatek/mt2712/dev ...
- Android Makefile中inherit-product函数简介,以及与include的区别
在 Android Makefile 中时不时会看见 inherit-product 函数的使用,类似下方这样: $(call inherit-product, vendor/do ...
- Android Makefile编译流程
★★★ 友情链接 : 个人博客导读首页-点击此处 ★★★ 1.整编译 当中android根目录下敲击make时候,根目录下的Makefile就一句话include build/core/main.mk ...
- Android Makefile分析
首先是可能用得到的基础知识,必须了解基础Makefile的语法,然后下面是Andriod用来编译相应模块使用的核心makefile,当然如果要速成的话也可以不看这些东西,直接按照后面的例子添加就可以了 ...
- Android Makefile 及Android.mk 整理
1.如何在Makefile及Android.mk文件中输出打印信息. Makefile中打印输出信息的方法是:$(warning xxxxx)或者$(error xxxxx) 输出变量方式为:$(wa ...
- Android makefile编译流程(二)
★★★ 友情链接 : 个人博客导读首页-点击此处 ★★★ 在build/core/main.mk中找到第一个目标,其makefile树关系如下: 然后我们逐一分析这些目标. ============= ...
- 【转】android makefile文件分析
Makefile的规则如下: target ... : prerequisites ... command ... ... target可以是一个目标文件,也可以是Object File(例如hell ...
- Samsung x210 Android makefile 的一些配置实例问题
1 驱动移植找不的编译时候的产品定义:TARGET_PRODUCT 起因: 编译驱动模块时候,出现错误:system/wlan/atheros/AR6kSDK.build_3.1_RC.734/hos ...
最新文章
- 【Qt】Qt5.x移植后的环境配置(imx6)
- python调用cmd命令会弹出黑框_python 调用cmd,不显示cmd黑框
- java贪吃蛇教程_用Java做的贪吃蛇,简单版......
- git常用命令和场景
- 54 分布式任务队列Celery
- 开发日记-20190827 关键词 计算机网络
- 泛函分析2——Normed Linear Spaces
- NumPy快速入门--形状操作
- 斜面上的根骨骼运动以及刚体测试
- 牛顿插值实验报告C语言,牛顿插值C语言.doc
- 关于html语义化 以下哪个说法是正确呢,前端面试题2019年网易工程师面试题及答案解析...
- SpringBoot-技术专区-详细打印启动时异常堆栈信息
- grpc 可以传递context嘛_Python中使用gRPC方法示例
- animation-fill-mode的一些思考
- Android实现计算器布局(表格布局)
- seqkit根据基因id_AgriSeq 靶向测序法基因分型技术
- 利用Matlab进行图像处理
- matlab 图像内接矩形,图像轮廓最大内接矩形的求法
- json parser类的使用
- Hive文件存储格式(建表stored as 的五种类型)
热门文章
- 打开editor的接口讨论
- 3.3 1!到n!的和
- 关于如何使用xposed来hook微信软件
- Docker实践:Cannot connect to the Docker daemon.
- 注册验证的时候一直出现的报错问题,终于解决了
- 从微软的DBML文件中我们能学到什么(它告诉了我们什么是微软的重中之重)~三 分部类是否破坏了单一职责...
- linux中的memory management和page mapping
- t-sne原理解释_T-SNE解释-数学与直觉
- leetcode542. 01 矩阵(bfs/dp)
- leetcode343. 整数拆分(动态规划)