2016-10-24 67 views
0

我們有一個使用vcvarsall.bat的nmake makefile(Microsoft,而不是Gnu)。隨着Dev15更改vcvarsall.bat路徑,我們需要有條件地設置它。Microsoft的Makefile中的條件設置變量

我已經加入

if $(VISUALSTUDIOVERSION) == 15.0 
     set VVA="$(VSINSTALLDIR)\Common7\IDE\VisualCpp\Auxiliary\Build\vcvarsall.bat" 
    else 
     set VVA="$(VSINSTALLDIR)\vc\vcvarsall.bat" 
    endif 

這些都與給了一個錯誤:

if 15.0 == 15.0 
The syntax of the command is incorrect. 
NMAKE : fatal error U1077: 'if' : return code '0x1' 
Stop. 

我是新來執行nmake,可能只是在批量代碼行的想法。任何人都可以阻止我的if-else構造中出現錯誤嗎?

+0

那麼,這與C或C++有什麼關係? (修辭問題) – Olaf

+0

對不起。因爲我是通過https://msdn.microsoft.com/en-us/library/txcwa2xx.aspx閱讀的。 – dushyantp

+0

試試'if「$(VISUALSTUDIOVERSION)」==「15.0」' – user3286661

回答

0

我也遇到了同樣的問題。解決這個問題的辦法是:IF和ENDIF語句應該正確縮進,以便編譯器識別IF結束指令。縮進解決了我的問題。