最简单的makefile

来源:互联网 发布:大数据与精准营销结合 编辑:程序博客网 时间:2024/04/30 00:33
NAME=main

$(NAME).exe : $(NAME).obj

 

$(NAME).obj : $(NAME).cpp

 

要点:

  1. exe在前,obj在后。因为nmake判断$(NAME).obj,如果不是最新的,就更新obj,然后创建exe。这里,分号前叫做“target”,分号后叫做“dependent”。
  2. 这还不是最简单的,这里使用了宏NAME。对宏的引用是$(),如果宏是单个字符,也可以不加()

 

NAME=main

$(NAME).exe : $(NAME).obj

@echo "link exe is ok"

$(NAME).obj : $(NAME).cpp

 

  1. 添加了@echo "link exe is ok",主要解释@的用法:不显示自身,所以显示的是:

link exe is ok

而不是

echo "link exe is ok"

"link exe is ok"

 

  1. 如果交换一下$(NAME).obj : $(NAME).cpp和$(NAME).exe : $(NAME).obj的位置,即

 

$(NAME).obj : $(NAME).cpp

 

$(NAME).exe : $(NAME).obj

 

exe将不会被编译,似乎nmake只执行第一行,然后由依赖关系再去执行其他。

原创粉丝点击