간단한 컴파일은 실행시켜 준다
make 명령어 추가
CC = gcc
all : main.o test.o
@echo TEST C MAKE # echo 메시지를 출력한다
@$(CC) -o emb main.o test.o
main.o : main.c
@echo main.o를 만들었습니다
@$(CC) -c main.c
test.o : test.c
@$(CC) -c test.c
@echo main.o를 만들었습니다
clean :
@rm -rf main.o
@rm -rf test.o
@rm -rf emb
run : all
@ls -al
@./emb
추가된 명령어들을 보면
CC = gcc 변수를 선언한 경우입니다 실제 gcc문구들은 $(CC)로 바꾸어서 사용한다.
다르게 설명하면
CC = -g -c or CC = main.o test.o 와 같은 긴문장을 해결 할때 간편하게 작성하는 역할을 한다
@ 명령문을 보이지 않게 한다
linux)make all 하게되면
$(CC) -o emb main.o test.o 메시지를 출력하게 되는데 @을 걸어주면 메시지가 출력않는다
echo make 명령중 메시지를 출력하고 싶을때 사용
예를 들어 위에 linux)make main.o 를 실행시
아래에 main.o를 만들었습니다 라고 출력되며 echo앞에 @있어 echo는 출력 되지 않는다
# 주석처리 한다라는 뜻입니다 C언어에서 (// 와 /* */)주석처리 되는것과 같다
CC = gcc
all: main.o Hexaview.o
$(CC) -o Hexaview main.o Hexaview.o
main.o: main.c
$(CC) -c main.c
Hexaview.o: Hexaview.c
$(CC) -c Hexaview.c
clean:
@echo main.o Hexaview.o Hexaview eraser
rm -rf main.o
rm -rf Hexaview.o
rm -rf Hexaview
run: all
ls -al
./Hexaview
all: main.o Hexaview.o
$(CC) -o Hexaview main.o Hexaview.o
main.o: main.c
$(CC) -c main.c
Hexaview.o: Hexaview.c
$(CC) -c Hexaview.c
clean:
@echo main.o Hexaview.o Hexaview eraser
rm -rf main.o
rm -rf Hexaview.o
rm -rf Hexaview
run: all
ls -al
./Hexaview
'C 언어 > 임베디드 C' 카테고리의 다른 글
지역변수 (0) | 2011.04.25 |
---|---|
함수의 정의 (0) | 2011.04.25 |
두 함수에 문법적 오류는 없지만 실행 파일이 만들어지지 않는 경우 (0) | 2011.04.20 |
구구단 출력하기 (0) | 2011.04.19 |
함수의 호출과 실행 (0) | 2011.04.19 |