1. 程式人生 > >MakeFile中ifeq語法報錯

MakeFile中ifeq語法報錯

/bin/sh: -c: line 0: syntax error near unexpected token `64,'

  1. /bin/sh: -c: line 0: `ifeq (64, 64)'

 

【原因】

 

Makefile中,當 ifeq, else 和 endif 沒有縮排時,make會正確識別它們,將其作為分支選擇的標識

當 ifeq, else 和 endif 有縮排時,make將它們當做普通的shell script

 

【解決】

 

去掉 ifeq, else 和 endif 的縮排,像下面這樣

 

注意:ifeq 和括號的左右必須要有空格。

由此說明makefile中關鍵字,函式,命令的不同,命令前必須要有tab,函是這樣的$(if)形式,關鍵字如ifeq前面不能有tab縮排。