Lưu ý
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử đăng nhập hoặc thay đổi thư mục.
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử thay đổi thư mục.
A makefile contains:
For a sample, see Sample makefile.
NMAKE supports other features, such as wildcards, long filenames, comments, and escapes for special characters.
Wildcards and NMAKE
NMAKE expands filename wildcards (*
and ?
) in dependency lines. A wildcard specified in a command is passed to the command; NMAKE doesn't expand it.
Long filenames in a makefile
Enclose long filenames in double quotation marks, as follows:
all : "VeryLongFileName.exe"
Comments in a makefile
Precede a comment with a number sign (#
). NMAKE ignores text from the number sign to the next newline character.
Examples:
# 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
To specify a literal number sign, precede it with a caret (^
), as follows:
DEF = ^#define #Macro for a C preprocessing directive
Special characters in a makefile
To use an NMAKE special character as a literal character, place a caret (^
) in front of it as an escape. NMAKE ignores carets that precede other characters. The special characters are:
: ; # ( ) $ ^ \ { } ! @ —
A caret (^
) within a quoted string is treated as a literal caret character. A caret at the end of a line inserts a literal newline character in a string or macro.
In macros, a backslash (\
) followed by a newline character is replaced by a space.
In commands, a percent symbol (%
) is a file specifier. To represent %
literally in a command, specify a double percent sign (%%
) in place of a single one. In other situations, NMAKE interprets a single %
literally, but it always interprets a double %%
as a single %
. Therefore, to represent a literal %%
, specify either three percent signs, %%%
, or four percent signs, %%%%
.
To use the dollar sign ($
) as a literal character in a command, specify two dollar signs ($$
). This method can also be used in other situations where ^$
works.