SRCS=$(wildcard *.c)
#HRCS=$(wildcard *.h)
OBJ=$(SRCS:.c=.o)
CC=arm-none-linux-gnueabi-gcc
CCFLAGS= -g -Wall -O0
tong: $(OBJ)
$(CC) $^ -o $@
%.o:$(SRCS) #疑问点,1:此行的“$(SRCS),”如果换为%.c则编译出错;2:把此行的“$(SRCS),”中的逗号去掉也会出错。
$(CC) -c $< $(CCFLAGS)
clean:
rm -rf tong $(OBJ)
.PHONY:clean
------解决方案--------------------
%.o:$(SRCS) 这个问题很简单了
因为SRCS是所有目录下的.c文件,可以用echo $(SRCS)打印出来。如果换为%.c则编译出错,原因是有可能少包函了相关。C文件