Makefile处理头文件

时间:2018-03-20 20:53:24

标签: gcc makefile c-header

以下是我的makefile:

CC=gcc
CFLAGS=-Wall -O3
SRCS = $(wildcard *.c)
EXES = $(patsubst %.c,%,$(SRCS))
.c.o:
        $(CC) $(CFLAGS) -c $<
SRC_CODE=\
        file1.c\
        file2.c\
        file.h
SOFI2D_OBJ=$(SRC_CODE:%.c=%.o)
sofi2D: $(SOFI2D_OBJ)
        $(CC) $^ -o $@
clean:
        rm -rf *.o *.o* *~ $(EXES)   
all: clean sofi2D

我想知道头文件(.h)在编译中扮演什么角色?因为所有操作都在.c文件...

1 个答案:

答案 0 :(得分:1)

头文件由C编译器使用,而不是make。

如果您希望在file.h更改时重建.c文件,则需要更改SRC_CODE的定义:

SRC_CODE = file1.c file2.c
$(SRC_CODE): file.h