yxr:Makefile 简单样本

yxr:搜集了不少makefile技巧,但是没有一个从头到尾,能够拿来就用的。工作需要,写了一个C++的简单makefile,记录下来,以备使用。

 1)Makefile中有不少已经存在的缺省变量,比如CFLAGS,CC,LIBRARY(?)

2)

CC  = gcc

ifdef LOGFILE

ERROLOG = 2>&1 >> $(LOGFILE)

endif

SRC        = $(wildcard *.cpp)                                          ###  列举所有cpp

SRC_O   = $(SRC:cpp=o)             ### 根据列举所有的cpp,将其后缀名换为.o

all:test                                                                             ### 最后的程序名叫test

test: $(SRC_O)                                                           #产生test可执行文件

  @echo $(SRC_O)              ##打印所有已o结尾的文件

  @$(CC)  -o $@ $^ -lstdc++          #运行gcc  参数 -o , $@--目标文件,$^--所有的依赖文件,$<--第一个依赖文件。  -lstdc++ 应该是library stdc++吧

.c.o:

  $(CC) -c $< -std=c++0x            #所有.c生成.o文件

clean:

  @rm -f *.o

  @rm -f test

  

原文地址:https://www.cnblogs.com/e-shannon/p/9426624.html