例えばソースファイルが、
source1.c
source2.c
とあったとして、
(当然ヘッダファイルsource2.hも準備してあるとして)
targetという実行ファイルを作る場合、
普通にやると
gcc -c source1.cとかやりますが、いちいちこんなんやってやんね!って事で、Makefileに
gcc -c source2.c
gcc -o target source1.o source2.o
target: source1.c source2.cとか書くだけで
cc -o target source1.c source2.c
$ make一発でコンパイル→リンクまで終わらせてくれる。。。
という優れものなんですが。。。
さすがにそこまでになると、、、IDEとか使った方が・・・。
とは思いますが。
備忘録
TARGET = target
OBJS = source1.o source2.o
CC = gcc
CFLAGS = -O
LDFLAGS =
INCLUDES =
LIBS =
all: $(TARGET)
$(TARGET): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
clean:
-rm -f $(TARGET) $(OBJS)
.c.o:
$(CC) $(CFLAGS) $(INCLUDES) -c $<
source1.o: source2.h
コメント