zoukankan      html  css  js  c++  java
  • Android-Makefile

    在Android的源代码中,随处可见Makefile,那么Makefile到底是用来干嘛的呢?其实Makefile和Maven、ANT、Gradle一样,属于构建工具,当项目比较庞大的时候,就可以使用makefile来构建项目了

    makefile简介

    一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,Makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为Makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令

    之前做C语言笔记的时候就写过关于Makefile的基本语法,这里就不再罗嗦了

    makefile在Android中的运用

    在编译Android系统的时候,一个make就可以生成,那为何会生成呢?
    其实仔细看,Android系统源码中,Makefile无处不在,其实整个过程就是Makefile在构建
    Makefile在构建时候,make会检查文件时候是否被修改,修改参与编译,没修改的话就不会编译

    Makefile有一些系统定义的变量和函数

    Android常用的指定:

    名称 作用
    LOCAL_PATH := $(call my-dir) 调用my-dir函数,返回Android.mk文件所在的目录,放在第一行,地址当前所在目录
    include file Makefile 可以引入其他的Makefile文件
    include $(CLEAR_VARS) 编译模块时,清空LOCAL_MODULE等参数
    LOCAL_MODULE 模块名称
    LOCAL_SRC_FILES 编译需要的源文件
    LOCAL_C_INCLUDES 需要的头文件
    LOCAL_SHARED_LIBRARIES 编译需要的动态库
    LOCAL_LDLIBS 链接库

    具体更深入关于Makefile可以参考:《跟我一起写 Makefile》
    无意间发现一篇不错的博客,链接:Makefile 使用总结

  • 相关阅读:
    How to Set up Cplex Dev Environment under Linux
    矿大linux下拨号上网的一个方法——利用NetworkManager
    4月4日在写协议分析器中遇到的问题:对类指针的直接赋值中遇到的问题
    新篇章的开始
    纠结N久,还是开通了博客园,希望跟大家多多交流吧
    SQL去重distinct方法解析
    接口测试基础知识介绍
    Appium是什么
    appium环境配置
    appium操作
  • 原文地址:https://www.cnblogs.com/cj5785/p/10664652.html
Copyright © 2011-2022 走看看