linux终端命令make,linux下的make命令

make命令的关键是找出上一次各个文件的修改时间,利用此修改时间来比较相依

赖文件最后一次修改的时间。若目标文件的修改时间早于其相依文件的修

改时间,则必须先对相依文件进行处理(编译),进而来更新目标文件,若目标文件的修改时间迟于其相依文件的修改时间,则不对该相依文件进行处理(编译)。

利用它可以每次只编译自上次编译后发生变化的文件,从而可以减少一些不必要的编译工作,提高效率。

执行make命令所需要的信息:

(1)用户定义的描述文件,一般为makefile

(2)文件系统有关的数据和与时间有关的信息

(3)一组后缀规则

2.makefile文件

Make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作。而makefile 文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并连接生成可执行文件,并要求定义源文件之间的依赖关系。

Makefile文件作为一种描述文档一般需要包含以下内容:

(1) 宏定义

(2) 源文件之间的相互依赖关系

(3) 在依赖关系基础上的可执行的命令序列

3.make命令

make命令的一般格式:

make【选项】【make描述文件】【宏定义】【目的文件】

make首先分析所有的宏定义参数(带嵌入等号的参数)并进行赋值,宏命令行覆盖在makefile中进行的定义,然后检验选项标志,最后递归的对每一个目的依赖文件进行检查。

unix下常用的选项如下:

f file

指定file文件为描述文件,如果file参数为"-"符,那么描述文件指向标准输入。如果没有"-f"参数,则系统将默认当前目录下名为

makefile或者名为Makefile的文件为描述文件。在Linux中, GNU make

工具在当前工作目录中按照GNUmakefile、makefile、Makefile的顺序搜索 makefile文件。

-i   忽略命令执行返回的出错信息。

-s   沉默模式,在执行之前不输出相应的命令行信息。

-r   禁止使用build-in规则。

-n   非执行模式,输出所有执行命令,但并不执行。

-t   更新目标文件。

-q   make操作将根据目标文件是否已经更新返回"0"或非"0"的状态信息。

-p   输出所有宏定义和目标文件描述。

-d   Debug模式,输出有关文件和检测时间的详细信息。

Linux下常用选项与Unix系统中稍有不同,下面是不同的部分:

-c dir   在读取 makefile 之前改变到指定的目录dir。

-I dir   当包含其他 makefile文件时,利用该选项指定搜索目录。

-h   help文挡,显示所有的make选项。

-w   在处理 makefile 之前和之后,都显示工作目录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值