Posted on 2009-06-01 14:32
Prayer 閱讀(257)
評論(0) 編輯 收藏 引用 所屬分類:
C/C++ 、
LINUX/UNIX/AIX
今天,花了很長時(shí)間,終于寫了個(gè)比較通用的Makefile,本來想在網(wǎng)上找的,結(jié)果發(fā)現(xiàn)都不太合用,結(jié)果還是自己動手,豐衣足食啊!
目錄結(jié)構(gòu)如下
project-src 代碼文件 *.c
-inc 頭文件 *.h
-obj 中間文件 *.o
out 輸出可執(zhí)行文件
TARGET = out
RM = rm
CC = gcc
CFLAGS = -O2
INCLUDES := -I ./inc
LIBS := libjpeg.a
SRCDIR := src
OBJDIR := obj
#######################一下內(nèi)容無需設(shè)置###########################
SRCS = $(wildcard $(SRCDIR)/*.c)
CSRC := $(subst $(SRCDIR)/,,$(SRCS))
OBJS := $(CSRC:%.c=$(OBJDIR)/%.o)
all: $(TARGET)
@echo Build DONE.
$(TARGET): $(OBJS)
$(CC) -o $(TARGET) $(OBJS) $(LIBS)
$(OBJS):$(SRCS)
@mkdir -p $(OBJDIR)
$(CC) $(CFLAGS) $(INCLUDES) -c -o $@ $(subst $(OBJDIR),$(SRCDIR),$*.c)
clean:
$(RM) -fr $(OBJDIR)
$(RM) -f $(TARGET)