Search code examples
cbuildmakefile

"make clean" results in "No rule to make target `clean'"


I am running Ubuntu 10.04. Whenever I run make clean, I get this:

make: *** No rule to make target `clean'. Stop.

Here is my makefile:

CC = gcc
CFLAGS = -g -pedantic -O0 -std=gnu99 -m32 -Wall
PROGRAMS = digitreversal
all : $(PROGRAMS)
digitreversal : digitreversal.o
       $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
.PHONY: clean
clean:
       @rm -f $(PROGRAMS) *.o core

Any ideas why its not working?

EDIT: It seems like doing:

make -f Makefile.txt clean

works. Now: is there any setting to change so I don't have to do the -f Makefile.txt every time?


Solution

  • It seems your makefile's name is not 'Makefile' or 'makefile'. In case it is different say 'abc' try running 'make -f abc clean'