1-Makefile简介
Posted laoyaodada
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1-Makefile简介相关的知识,希望对你有一定的参考价值。
Makefile是和make命令一起配合使用的。
很多大型项目的编译都是通过Makefile来组织的,如果没有Makefile,那很多项目中各种库和代码之间的依赖关系不知会多复杂。
Makefile的组织流程的能力如此之强,不仅可以用来编译项目,还可以用来组织我们平时的一些日常操作。这个需要大家发挥自己的想象力。
Makefile主要部分
1、显示规则 :: 说明如何生成一个或多个目标文件(包括 生成的文件, 文件的依赖文件, 生成的命令)
2、隐晦规则 :: make的自动推导功能所执行的规则
3、变量定义 :: Makefile中定义的变量
4、文件指示 :: Makefile中引用其他Makefile; 指定Makefile中有效部分; 定义一个多行命令
5、注释 :: Makefile只有行注释 "#", 如果要使用或者输出"#"字符, 需要进行转义,"#"
Makefile基本格式如下:
target ... : prerequisites ...
command
...
...
其中:
- target --- 目标文件,可以是Object File,也可以是可执行文件
- prerequisites --- 生成target所需要的文件或者目标
- command --- make需要执行的命令 (任意的shell命令),Makefile中的命令必须以[tab]开头
GNU make的工作方式
1、读入主Makefile (主Makefile中可以引用其他Makefile)
2、读入被include的其他Makefile
3、初始化文件中的变量
4、推导隐晦规则, 并分析所有规则
5、为所有的目标文件创建依赖关系链
6、根据依赖关系, 决定哪些目标要重新生成
7、执行生成命令
以上是关于1-Makefile简介的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向类加载器 ClassLoader ( 类加载器源码简介 | BaseDexClassLoader | DexClassLoader | PathClassLoader )(代码片段
Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段