0

次の点を考慮してください。

SRCS = somefile.c util/someother.c ../src/more.c

%.o : %.c
    $(GCC) -MD -c $< -o $@ -Wp,-MD,.deps/$*.d
    @cp .deps/$*.d .deps/$*.P; \
      sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
          -e '/^$$/ d' -e 's/$$/ :/' < .deps/$*.d >> .deps/$*.P; \
      rm -f .deps/$*.d

-include $(SRCS:%.c=.deps/%.P)

.o ファイルが ./ になるように上記を変更するにはどうすればよいですか? 現在、ソースファイルが存在するディレクトリにビルドされていますが、これは悪いことです。

4

1 に答える 1

0

私はこのようにします:

SRCS = somefile.c someother.c more.c

%.o : %.c
    [same as before]

-include $(SRCS:%.c=.deps/%.P)

vpath %.c util ../src
于 2012-05-22T15:58:26.683 に答える