일단 다음과 같은 두 파일이 있다고 가정한다.
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