2012-04-24 30 views
0

我有一個引發錯誤的make文件。我認爲這個問題歸結爲一個條件陳述,即我的語法錯誤,但無法弄清楚實際上是錯誤的。在make文件中有條件時出錯

需要明確的是,我使用的命令化妝運行的代碼{TARGET_NAME}

該代碼是

ifeq ($(isDynamic), d) 
    libExt=.so 
else 
    libExt=.a 
endif 

該錯誤是 /bin/sh的:在第1行0403-057語法錯誤:`('is not expected。

回答

2

你正在運行一個Makefile作爲shell腳本,你可能想在其上運行make,可能你想把它變成make腳本,雖然這通常不是相當於peo打算打算;使第一行

#! /usr/bin/make -f 

(或任何GNU make是),並chmod +x它。

+0

這就是我所做的。 make {target_name} – Dunc 2012-04-24 09:38:31

+0

在這種情況下,您可能需要顯示更多的Makefile。請注意,條件不能在Makefiles中縮進,'ifeq' /'else' /'endif'關鍵字必須從第1列開始。 – geekosaur 2012-04-24 09:42:23

+0

問題仍然存在 – Dunc 2012-04-24 09:43:28