일단 다음과 같은 두 파일이 있다고 가정한다.
sub.c
hello.c
Makefile의 생성
vi Makefile (vi로 새로운 Makefile 파일을 생성한다.)
위 Makefile에서 $(LK), $(CC), rm앞과 같이 명령어 앞에 반드시 tab키가 들어가야 한다.
Makefile의 사용
컴파일 방법
make
또는
make all
제거 방법
make clean
sub.c
#include <stdio.h> void sub() { printf("sub.c\n"); }
hello.c
#include <stdio.h> void sub() int main() { sub(); printf("Hello World!\n"); }
Makefile의 생성
vi Makefile (vi로 새로운 Makefile 파일을 생성한다.)
CC=gcc -c LK=gcc -o all:hello // 파일 hello가 있으면 종료 없으면 hello: target으로 이동 hello: hello.o sub.o // hello.o, sub.o파일이 있으면 $(LK)명령 실행, 없으면 hello.o: 또는 sub.o: target으로 이동 $(LK) hello hello.o sub.o hello.o:hello.c $(CC) hello.c sub.o:sub.c $(CC) sub.c clean: rm -rf *.o hello // 현재 디렉토리에 .o파일과 hello 제거
위 Makefile에서 $(LK), $(CC), rm앞과 같이 명령어 앞에 반드시 tab키가 들어가야 한다.
Makefile의 사용
컴파일 방법
make
또는
make all
제거 방법
make clean