※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

make depend で依存関係解決コード自動生成。
その後、make。

makedepend: warning: /usr/include/gnu/stubs.h: non-portable whitespace encountered at line 7
が発生した場合、/usr/include/gnu/stubs.h:7の最初の空白を削除。

CC      = gcc
TARGET  = a.out
VPATH   = . subdir1 subdir2
FLAGS   = -Wall $(addprefix -I, $(VPATH))
SRCS    = $(foreach dir, $(VPATH), $(shell cd $(dir); ls *.c))
OBJS    = $(SRCS:.c=.o)

$(TARGET): $(OBJS)
    $(CC) $(FLAGS) -o $@ $(OBJS)

depend:
    makedepend -- $(FLAGS) -- $(foreach dir, $(VPATH), $(shell ls $(dir)/*.c))

clean:
    rm -f $(TARGET) $(OBJS)

.c.o:
    $(CC) $(FLAGS) -c $<