원글(이글루): 2009-12-29 20:31:14
EX)
###################################
PROG = main
REALPROG = putseq
srcdir = ./src
CC = gcc
CCOPT = -O2
DEFS =
INCLS =
LIBS =
###################################
debug: DEFS = $(DEFS) -DDEBUG
CFLAGS = $(CCOPT) $(DEFS) $(INCLS)
.c.o:
@rm -f $@
$(CC) $(CFLAGS) -c $*.c -o $*.o
CSRC = $(wildcard $(srcdir)/*.c)
OBJ = $(CSRC:.c=.o)
CLEANFILES = $(PROG) $(OBJ)
all: $(PROG)
$(PROG): $(OBJ)
@rm -f $(PROG)
$(CC) -o $@ $(OBJ) $(LIBS)
@rm -f $(OBJ)
@mv $(PROG) $(REALPROG)
debug: all
clean:
rm -f $(CLEANFILES)
-----------------------------------------------------------------------------
■ 주의사항
1. make는 첫문자로 나오는 탭을 통하여 명령을 인식한다.
2. 역슬래쉬로 행을 이어갈 수 있으나 역슬래쉬 앞에는 반드시 행이 바뀌는 문자가 와야 한다. (공백이 오면 안됨)
3. 이름l: <의존할 것들> 형식으로 온다.
4. 의존 되는 것들이 바뀌어 있으면 그 명령이 수행된다.
'IT > 프로그래밍' 카테고리의 다른 글
[Linux] 정적 라이브러리 생성 (0) | 2023.09.13 |
---|---|
[DOS/UNIX] 디렉토리 내의 파일 한번에 이름 바꾸기 (0) | 2023.09.13 |
[함수] getopt, getopt_long (0) | 2023.09.13 |
[html] Java Script를 이용한 Redirect (0) | 2023.09.13 |
[Linux/C] printf같은 함수를 만들자 (0) | 2023.09.13 |