メイクファイルは一度作ってしまえば make と打ち込むだけで変更部分のみをコンパイルしてくれる便利なツールなのですが、最後の「依存関係」が正確に入力されている事が大前提です。
# Makefile
# あ〜ちゃらのメイクファイル
EXENAME=herohero
INCLUDEPATH=-I. -I色々
CFLAGS=$(INCLUDEPATH) -g 他色々
ALL_C_FILES=main.c hoge.c nya.c・・・all: $(EXENAME)
clean:
\rm $(ALL_C_FILES:.c.o)
\rm $(EXENAME).c.o:
$(CC) $(CFLAGS) -c $< -o $@
$(EXENAME): $(ALL_C_FILES:.c.o)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ALL_C_FILES:.c.o)#依存関係の記述
main.o: mainc. main.h
hoge.o: hoge.c main.h hoge.h
:
:
そしたら make depend と打ち込んでみましょう。Makefileが書き換えられて、ファイルの末尾に依存関係が追加されているはずです。あとは make と打ち込んでコンパイルするだけ。
# Makefile
# あ〜ちゃらのメイクファイル
EXENAME=herohero
INCLUDEPATH=-I. -I色々
CFLAGS=$(INCLUDEPATH) -g 他色々
ALL_C_FILES=main.c hoge.c nya.c・・・all: $(EXENAME)
clean:
\rm $(ALL_C_FILES:.c.o)
\rm $(EXENAME)#以下を追加
depend:
makedepend -- $(CFLAGS) -- $(ALL_C_FILES).c.o:
$(CC) $(CFLAGS) -c $< -o $@
$(EXENAME): $(ALL_C_FILES:.c.o)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ALL_C_FILES:.c.o)#依存関係の記述(あると邪魔なのでコメントアウト)
#main.o: mainc. main.h
#hoge.o: hoge.c main.h hoge.h
# :
# :