On 4/29/07, Cédric Lucantis <[EMAIL PROTECTED]> wrote:
Le dimanche 29 avril 2007 04:56, Micha Feigin a écrit:
> On Sat, 28 Apr 2007 22:20:08 -0300
> "Iuri Sampaio" <[EMAIL PROTECTED]> wrote:
> > $(BIN): $(OBJS)
> >
> > $(CC) $(CFLAGS) -o $(BIN) $(OBJS) $(LIBS)
> >
Not really an answer, but this is wrong too, you should have something like
this instead:
OBJS = rotation.o
BIN = rotation
$(BIN): $(OBJS)
$(CC) -o $@ $^ $(LIBS)
%.o: %.c
$(CC) -c -o $@ $< $(CFLAGS)
but with only one source file it doesn't really matter
This rule for %.o is, I believe, identical to the implicit rule. I
always use something like:
SOURCES := rotation.c
or
SOURCES := $(wildcard *.c)
LDFLAGS += $(LIBS)
OBJS := $(patsubst %.c,%.o,$(SOURCES))
BINS := $(patsubst %.o,%,$(OBJS))
default : rotation
or
default : $(BINS)
% : %.o
<tab>$(CC) -o $@ $< $(CFLAGS) $(LDFLAGS)
If I'm using GNU make, I hardly ever use "=" instead of ":=", unless I
really want to define a macro. You're a lot more likely to get what
you expect most of the time, and you can use "+=".
--
Michael A. Marsh
http://www.umiacs.umd.edu/~mmarsh
http://mamarsh.blogspot.com
http://36pints.blogspot.com