microsoft makefile中的条件集变量

时间:2016-10-24 17:29:37

标签: visual-studio nmake

我们有一个使用vcvarsall.bat的nmake makefile(Microsoft,而不是Gnu)。使用Dev15更改vcvarsall.bat路径时,我们需要有条件地设置它。

我添加了

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构造中的错误吗?

1 个答案:

答案 0 :(得分:0)

我也遇到了同样的问题。这个问题的解决方案是!IF和ENDIF语句应该正确缩进。所以编译器识别IF指令的结束。缩进解决了我的问题。