as you can see in no rules I tell the makefile to compile with the -c
flag but he does, can somebody explain me why?
CodePudding user response:
You do not have a rule to make a .o
file from a .c
file in your Makefile, so make
uses its default rule:
%.o: %.c
$(CC) $(CPPFLAGS) $(CFLAGS) -c $@ $*.c
CodePudding user response:
See the makefile manual on implicit rules:
Compiling C programs
n.o is made automatically from n.c with a recipe of the form ‘
$(CC) $(CPPFLAGS) $(CFLAGS) -c
’.
If you wish to avoid this, define an explicit rule.