Moin,
ich habe das bei mir mal nachgestellt mit einem Mini-Progrämmchen:
Code:
jan@jack:~/tmp/mtest> cat makefile
C = gcc
OBJECTS = main.o m1.o
sdl: $(OBJECTS)
$(CC) -o $@ $(OBJECTS)
%.o: %.c %.h
$(CC) -c $<
clean:
rm *.o sdl
Und dann habe ich ein paar Tests gemacht:
Code:
jan@jack:~/tmp/mtest> make
cc -c main.c
cc -c m1.c
cc -o sdl main.o m1.o
jan@jack:~/tmp/mtest> touch m1.h
jan@jack:~/tmp/mtest> make
cc -c m1.c
cc -o sdl main.o m1.o
jan@jack:~/tmp/mtest> touch main.h
jan@jack:~/tmp/mtest> make
cc -c main.c
cc -o sdl main.o m1.o
Wie Du siehst - es funktioniert prinzipiell. Es muss bei Dir eine andere Ursache haben. Ach ja:
Code:
jan@jack:~/tmp/mtest> uname -r
2.6.5-7.257-smp
jan@jack:~/tmp/mtest> make -v
GNU Make 3.80
Jan
Lesezeichen