Makfile学习1-规则与示例

Posted rainingday

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Makfile学习1-规则与示例相关的知识,希望对你有一定的参考价值。

示例:

①基础,根据最基础的规则编写。这条规则的作用:判断这些依赖文件,如果发现某个依赖文件被修改过(make会比较依赖文件和目标文件的时间,比如比目标文件时间新,认为被修改过),就会执行命令,来重新生成目标文件。简单暴力,但是效率低

test : main.c sub.c sub.h
    gcc -o test main.c sub.c

②效率高,相似规则太多太啰嗦,不支持检测头文件

test : main.o sub.o           #当我们make时没有指定目标,就会去Makefile里查找第一个目标。
    gcc -o test main.o sub.o
main.o : main.c
    gcc -c -o main.o main.c
sub.o : sub.c
    gcc -c -o sub.o sub.c

  clean:
   rm *.o test

③使用通配符,消除重复规则,效率高,精炼,不支持检测头文件

test : main.o sub.o
    gcc -o test main.o sub.o

%.o : %.c
    gcc - c -o $@ $<

clean:
    rm *.o test -f

 



以上是关于Makfile学习1-规则与示例的主要内容,如果未能解决你的问题,请参考以下文章

Makfile——基础知识

Makfile——基础知识

makfile

为啥此代码片段返回意外结果?

需要示例代码片段帮助

规则引擎EasyRules介绍,应用及示例