Android.mk文件解析

这篇具有很好参考价值的文章主要介绍了Android.mk文件解析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Android.mk文件解析

一、变量解析

1、LOCAL_PATH

  • 当前模块位置
  • my_dir系统提供的宏函数,返回当前文件所在的路径
  • $(call my_dir)调用该函数

2、include $(CLEAR_VARS)

  • 清除除了LOCAL_PATH变量外的LOCAL_XXX变量
  • 所有的编译控制文件都在同一个GNU MAKE执行环境中,所有的编译控制文件由同一个GNU Make解析和执行,其变量是全局的。所以清理后才能避免相互影响。

3、LOCAL_SRC_FILES

  • 需要编译的文件
  • $(all-proto-files-under,src)src目录下所有proto文件

4、LOCAL_MODULE

  • 编译生成的模块名称
  • 必须定义且唯一

5、编译结果

  • include $(BUILD_JAVA_LIBRARY):编译成java库
  • include $(BUILD_PACKAGE):编译成apk
  • include $(BUILD_STATIC_LIBRARY):编译成静态库
  • include $(BUILD_SHARED_LIBRARY):编译成动态库

6、LOCAL_MODULE_TAGS

  • 编译的标签
  • 常见的标签:debug,eng,user,development或optional(默认)

7、LOCAL_C_INCLUDES

  • 设置c/c++所需的头文件路径

8、LOCAL_SHARED_LIBRARIES

  • 当前模块运行时依赖的动态库名

文章来源地址https://www.toymoban.com/news/detail-421037.html

到了这里,关于Android.mk文件解析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android mk文件

    apk文件和mk文件在同级目录

    2024年01月16日
    浏览(41)
  • Android.mk开发模板

    今天简单写了一个 Android.mk 的示例模板,供初学者参考。 本模板主要给大家示例 Android NDK 开发中的如下几个问题: 如何自动添加需要编译的源文件列表 如何添加第三方静态库、动态库的依赖 如何构造一个完整的NDK工程框架 假设我们的项目依赖 libmath.a, libjson.a, libffmpeg.so 这

    2024年02月11日
    浏览(28)
  • Android.mk 常用模块类型

    生成的是动态库(.so 文件) 生成的是静态库(.a 文件) 用于编译 Java 代码并生成可执行的 Java 程序(.jar 文件) 用于编译 C/C++ 代码并生成可执行的 C/C++ 程序

    2024年02月02日
    浏览(28)
  • Android NDK开发详解之Android.mk探秘

    本页介绍了 ndk-build 所使用的 Android.mk 构建文件的语法。 概览 Android.mk 文件位于项目 jni/ 目录的子目录中,用于向构建系统描述源文件和共享库。它实际上是一个微小的 GNU makefile 片段,构建系统会将其解析一次或多次。Android.mk 文件用于定义 Application.mk、构建系统和环境变量

    2024年02月06日
    浏览(45)
  • Android.mk和Android.bp的区别和转换详解

    简单的说: Android.mk和Android.bp都是用来编译出类库.jar,应用文件.apk,动态库.so,静态库.a等等作用。 Android.mk就是一个GNU make语法的脚本文件。 Android.bp文件是Android 7.0及更高版本中引入的一种构建脚本文件,是使用Starlark语法编写的,它是一种基于Python的轻量级脚本语言。 他们

    2024年04月28日
    浏览(44)
  • Android NDK开发详解之Application.mk探秘

    本文档介绍 ndk-build 所使用的 Application.mk 构建文件。 我们建议先阅读概念页面,然后再阅读本页面。 概览 Application.mk 指定 ndk-build 的项目级设置。默认情况下,它位于应用项目目录中的 jni/Application.mk 下。 注意:其中许多参数也具有模块等效项。例如,APP_CFLAGS 对应于 LOCA

    2024年02月08日
    浏览(40)
  • android mk 和 bp 引入三方jar ,aar

    网上有很多关于这方面的介绍,我这边直接上完整的文件,供参考,想用的,直接修改模块名字,就可以使用了,避免踩坑. 1,LOCAL_PATH := $(call my-dir)         这个是固定的一般不需要改.my-dir 返回 Android.mk  文件本身所在的目录 2,LOCAL_MODULE_TAGS := user eng tests optional 这四

    2024年02月20日
    浏览(48)
  • Android.mk中的LOCAL_OVERRIDES_PACKAGES用法

    Android.mk中的LOCAL_OVERRIDES_PACKAGES用法_mk local_over_觅风者的博客-CSDN博客 Android.mk中的LOCAL_OVERRIDES_PACKAGES的用法说明可以参考以下文章: Android.mk覆盖替换LOCAL_OVERRIDES_PACKAGES 此变量可以使其他的模块不加入编译 项目中遇到的问题:修改了devicemstaralmonddevice-common.mk文件,将原生

    2024年02月15日
    浏览(54)
  • 编写Android.mk / Android.bp 引用三方 jar 包,aar包,so 库

            在Android10之后,所有项目工程中,官方推荐使用Android.bp去编译构建,以前使用Android.mk构建的项目随着版本迭代升级,慢慢需要变更为Android.bp, 两者的语法都需要去了解并熟练使用。 笔者之前写过Android.mk的语句介绍,里面有介绍每句代码的含义编写Android.mk把Andro

    2024年02月06日
    浏览(41)
  • (NDK编译)详解使用Android.mk编译的C/C++程序过程

    想要在 Android设备 上运行 C/C++程序 可执行文件,可采用一个方法就是使用 NDK编译 ,很多时候要比 gcc编译 更适合,这里我采用的是 imx6q开发板 上面装载了自己编写的Android6.0.1镜像,在 Ubuntu64位 系统上采用NDK编译。 目录 1.准备文件 2.编写Android.mk 注意 完整Android.mk代码 3.NDK编

    2024年02月05日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包