哪一个是写Makefile的正确方法?

时间:2015-02-23 12:35:37

标签: c makefile

Belows是练习Makefile的非常简单的代码 蓝框是源代码,红框是Makefile 我想知道哪一个是正确的方法来编写Makefile btn上部Makefile或Bottm Makefile。是的,我想知道"依赖于头文件(helpMe.h)"。谢谢。 enter image description here

1 个答案:

答案 0 :(得分:0)

您确实需要对象文件规则中的.h,因为当头文件发生更改时,您当然希望重新编译,因此这是一个Makefile来处理

CC      = gcc
LDFLAGS =
CFLAGS  = -Wall -Werror -std=c99 -pedantic
OBJ     = helpMe.o

executable-name: $(OBJ)
    $(CC) $(CFLAGS) $(LDFLAGS) $(OBJ) -o $@

%.o: %.c %.h
    $(CC) -c $(CFLAGS) $<

clean:
    @rm -fv *.o executable-name 

您可以根据需要添加目标文件,只需将文件名添加到$(OBJ)变量中,就像这样

CC      = gcc
LDFLAGS =
CFLAGS  = -Wall -Werror -std=c99 -pedantic
OBJ     = helpMe.o HeaderTest.o

executable-name: $(OBJ)
    $(CC) $(CFLAGS) $(LDFLAGS) $(OBJ) -o $@

%.o: %.c %.h
    $(CC) -c $(CFLAGS) $<

clean:
    @rm -fv *.o executable-name