title: No rule to make target
body: <p>I am trying to follow this tutorial:
  <a href="http://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/" rel="nofollow">http://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/</a></p>
  
  <p>When I am at the last makefile (#5), the "make" can't proceed becasue (error prompt) <code>No rule to make target "obj/hellomake.o", needed by "hellomake"</code>. This piece of code tries to compile the sources files and put libs, srcs, objs into respective folders.</p>
  
  <pre><code>IDIR =../include
  CC=gcc
  CFLAGS=-I$(IDIR)
  
  ODIR=obj
  LDIR =../lib
  
  LIBS=-lm
  
  _DEPS = hellomake.h
  DEPS = $(patsubst %,$(IDIR)/%,$(_DEPS))
  
  _OBJ = hellomake.o hellofunc.o 
  OBJ = $(patsubst %,$(ODIR)/%,$(_OBJ))
  
  
  $(ODIR)/%.o: %.c $(DEPS)
      $(CC) -c -o $@ $&lt; $(CFLAGS)
  
  hellomake: $(OBJ)
      gcc -o $@ $^ $(CFLAGS) $(LIBS)
  
  .PHONY: clean
  
  clean:
      rm -f $(ODIR)/*.o *~ core $(INCDIR)/*~  
  </code></pre>
  
  <p>I have been staring at it for an hour already, it's not a complex piece of code but I couldn't eyeball the problem. I suspect the problem happens here:</p>
  
  <pre><code>$(ODIR)/%.o: %.c $(DEPS)
      $(CC) -c -o $@ $&lt; $(CFLAGS)
  
  hellomake: $(OBJ)
      gcc -o $@ $^ $(CFLAGS) $(LIBS)
  </code></pre>
  
  <p>I just don't see anything wrong with it. Please help.</p>