我想運行在一個makefile下一行:
g++ -O2 -g -Wall -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -o "[email protected]" "$<"
我想定義將包含所有的標誌變量:
FLAGS := -O2 -g -Wall -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)"
,然後使用這個變量而不是硬編碼線:
g++ $(FLAGS) -o "[email protected]" "$<"
但是日的最後一部分上面的行(引用部分)會產生問題。
我的問題是我如何將此行分配給一個變量?我嘗試了各種逃生字符組合,但似乎沒有任何工作。
謝謝。
運行make時命令行是否正確顯示?少了什麼東西? –
這個問題指出你應該用反斜槓來避免雙引號。 http://stackoverflow.com/questions/17498327/gnu-make-variable-unexpected-token –
@DidierTrosset當試圖用反斜槓轉義引號我得到g ++ -O2 -g -Wall -c -fmessage-length = 0 - MMD -MP -MF \「\」-o「 .o」「../ .cpp」 –
eladm26