make与Makefile

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/likunkun__/article/details/82712217

make是一个命令,Makefile是一个文件(可大写也可以小写)

Makefile里面放的是依赖关系和依赖方法

 

 

新建一个makefile文件,在Makefile里写:


 
 
  1. hello:hello. c
  2. gcc hello -o hello. c       //必须以table开头

保存退出

 

生成可执行:

直接make,然后./hello就可以执行


 
 
  1. make hello.c
  2. ./hello

 

Makefile很重要,会不会Makefile,说明了一个人是否具备完成大型工程的能力

 

清理项目(clear):

继续在makefile 里写:


 
 
  1. hello :hello.c
  2. gcc hello -o hello .c
  3. clean:
  4. rm -f hello

默认运行的时候,从上到下,只生成hello(没有clean,clean不依赖任何文件)

如果要使用clean就直接用make clean命令。

 

伪目标:总是被执行

伪目标也是目标。为什么要用伪目标?

因为现在生成(编译)工程的方式是直接make,清理就直接make clean,

但规定如果要想第二次编译,必须保证修改过源代码。

如果想要他总是去编译(不修改也可以编译),那么我们在最前面加入.PHONY就可以总是被执行。

把clean设置成伪目标:


 
 
  1. hello:hello. c
  2. gcc hello -o hello. c
  3. . PHONY:clean          //把后面的标签变成伪目标
  4. clean:
  5. rm -f hello

 

也可以吧hello设置成伪目标:


 
 
  1. . PHONY:hello
  2. hello:hello. c
  3. gcc hello -o hello. c
  4. . PHONY:clean          //把后面的标签变成伪目标
  5. clean:
  6. rm -f hello

所以.PHONY就是定义之后可以总是被执行。

 

总结:

1、make是一个指令。Makefile是一个文件,放的是依赖关系。

2、依赖方法前必须用Tab开头,之后放依赖方法。

3、.phony定义伪目标,总是可以被执行

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值