【问题标题】:How do you access variables using NMake?如何使用 NMake 访问变量?
【发布时间】:2010-06-21 17:19:57
【问题描述】:

我有一个包含以下代码的生成文件。我正在尝试在 if 语句中设置一个变量。它没有错误,但%OPTION% 只打印%OPTION(只有一个百分号)而$(OPTION) 不打印任何东西。请帮忙

生成文件

RELEASE_OR_DEBUG=debug  
init:  
    SET OPTION=test  
    @echo test1 = %OPTION%  
        @echo test2 = $(OPTION)  
    if ".$(RELEASE_OR_DEBUG)" == ".debug" SET OPTION="-d"  
    @echo OPTION = %OPTION%  
    @echo OPTION = $(OPTION)  

输出

test1 = %OPTION  
test2 =   
if ".debug" == ".debug" SET OPTION="-d"  
OPTION = %OPTION  
OPTION = $(OPTION)

【问题讨论】:

    标签: variables if-statement nmake setting statements


    【解决方案1】:

    您不能在依赖语句中设置变量(例如本例中的“init”)。事实上,你也不能在那里使用 if 语句。变量可以在调用 makefile 之前由外部批处理文件设置(然后该批处理文件可以调用 makefile)或在此示例中的依赖语句(如 RELEASE_OR_DEBUG)之外设置。
    要访问依赖语句中的变量,请使用 $(VARIABLE_NAME)。请注意,如果未找到变量名称,它将仅使用空白字符串(例如在未找到变量 OPTION 的“@echo test2 = $(OPTION)”测试中)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-22
      • 1970-01-01
      • 2012-04-08
      • 2016-06-07
      • 1970-01-01
      • 2011-06-07
      相关资源
      最近更新 更多