Makefile 練習(一):單個原始檔
阿新 • • 發佈:2021-02-02
Makefile 練習(一):單個原始檔
1.程式編譯過程
2. 單個原始檔
main.c
#include <stdio.h>
int main()
{
#ifdef _SWITCH_
printf("Hello, this is from Switch\r\n");
#else
printf("Sorry, it doesn't work\r\n");
#endif
return 0;
}
Makefile
# Makefile test // 註釋
VAR_ENABLE = y // 變數定義
ifeq ($(VAR_ENABLE), y) // 條件判斷
CC := gcc // 變數定義—
TAR := main
OBJ := main.o
endif
CFLAGS = -D_SWITCH_ // 巨集定義
$(TAR):$(OBJ)
$(CC) $(OBJ) -o $(TAR)
@echo "___Make Enable___";
.PHONY: // 偽目標
clean:
rm -rf $(OBJ)
cleanall:
rm -rf $(OBJ) $(TAR)
以上,Makefile裡練習了常用的一下概念,除錯過程中遇到的bug如下
(1) Makefile:5: *** missing separator。 停止。
原因在於:ifeq 與 () 之間缺少了空格