NMAKE 生成文件内容和功能

生成文件包含:

有关示例,请参阅示例生成文件

NMAKE 支持其他功能,例如通配符、长文件名、注释和特殊字符的转义。

通配符和 NMAKE

NMAKE 在依赖项行中扩展文件名通配符(*?)。 命令中指定的通配符将传递给该命令;NMAKE 不会扩展。

生成文件中的长文件名

用双引号将长文件名引起来,如下所示:

all : "VeryLongFileName.exe"

生成文件中的注释

在注释前加上数字符号 (#)。 NMAKE 忽略从数字符号到下一个换行符之间的文本。

示例:

# Comment on line by itself
OPTIONS = /MAP  # Comment on macro definition line

all.exe : one.obj two.obj  # Comment on dependency line
    link one.obj two.obj
# Comment in commands block
#   copy *.obj \objects  # Command turned into comment
    copy one.exe \release

.obj.exe:  # Comment on inference rule line
    link $<

my.exe : my.obj ; link my.obj  # Err: cannot comment this
# Error: # must be the first character
.obj.exe: ; link $<  # Error: cannot comment this

若要指定文本数字符号,请在其前面加上插入符号 (^),如下所示:

DEF = ^#define  #Macro for a C preprocessing directive

生成文件中的特殊字符

若要将 NMAKE 特殊字符用作文本字符,请将插入符号 (^) 放在其前面作为转义符。 NMAKE 忽略其他字符前面的插入符号。 特殊字符包括:

: ; # ( ) $ ^ \ { } ! @ —

带引号字符串中的插入符号 (^) 被视为文本插入符号字符。 行末尾的插入符号在字符串或宏中插入文本换行符。

在宏中,反斜杠 (\) 后跟的换行符将替换为空格。

在命令中,百分比符号 (%) 是文件说明符。 若要在命令中以文本表示 %,请指定一个双百分号 (%%) 来替单百分号。 在其他情况下,NMAKE 会按面解释单百分号 %,但始终将双百分号 %% 解释为单百分号 %。 因此,若要表示文本 %%,请指定三个百分号 %%% 或四个百分号 %%%%

若要在命令中使用美元符号 ($) 作为文本字符,请指定两个美元符号 ($$)。 此方法也可以在 ^$ 工作的其他情况下使用。

另请参阅

NMAKE 参考