Trying to find simple way of printing information in makefile. At the bottom is shown my simple makefile.
Line $(info aaa) prints aaa fine.
But line echo 'aaa' creates error *** missing separator
Is it possible to print info using echo in makefile?
CC=gcc
CFLAGS=-I.
DEPS = f1.h,hellomake.h
echo 'aaa'
$(info aaa)
%.o: %.c $(DEPS)
$(CC) -c -o $@ $< $(CFLAGS)
hellomake: hellomake.o hellofunc.o f1.o
gcc -o hellomake hellomake.o hellofunc.o f1.o -I.
You can use trick like this in your Makefile:
a = $(shell echo abc)
$(info $(a))
Makefiles are not executed line by line, but regarding the rule dependencies. Your echo statement does not belong to a rule, but make thinks it should, thus the error message.
If you want to generate a general output independent of any dependency, $(info ...) (or $(warning ...)) is the way to go.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With