1.nmake
1.1 nmake reference
NMAKE.EXE是Visual Studio附带的一个命令行工具,它基于描述文件中包含的命令生成项目。
要使用NMAKE,必须在开发人员命令提示符窗口中运行它。开发人员命令提示符窗口为工具、库设置了环境变量,并包含在命令行中生成所需的文件路径。
1.2 运行nmake
1.2.1 语法
NMAKE [option ...] [macros ...] [targets ...] [@command-file ...]
1.2.2 评论
NMAKE只生成指定的目标,如果未指定任何目标,则生成makefile中的第一个目标。
第一个makefile目标可以是构建其他目标的伪目标。NMAKE使用使用/F指定的makefiles,如果未指定/F,则使用当前目录中的Makefile文件。如果未指定makefile,它将使用推理规则来构建命令行目标。
命令文件文本文件(或响应文件)包含命令行输入。其他输入可以在@command-file之前或之后。允许一条路径。在命令文件中,换行符被视为空格。如果宏定义包含空格,请将其括在引号中。
1.2.3 NMAKE选项(options)
下表介绍了NMAKE选项。选项前面有斜杠(/)或破折号(-),不区分大小写。使用!CMDSWITCHES可更改makefile或Tools.ini中的选项设置。
选项 | 目标 |
---|---|
/A | 强制构建所有评估目标,即使与从属目标相比没有过时。不强制构建不相关的目标。 |
/B | 即使时间戳相等,也会强制构建。建议仅用于快速系统(分辨率为2秒或更短)。 |
/C | 抑制默认输出,包括非致命的NMAKE错误或警告、时间戳和NMAKE版权消息。抑制/K发出的警告。 |
/HELP, /? | 显示NMAKE命令行语法的简要摘要。 |
/F filename | 将文件名指定为makefile。空格或制表符可以位于文件名之前。为每个makefile指定一次/F。要从标准输入提供makefile,请为文件名指定短划线(-),并使用F6或CTRL+Z结束键盘输入。 |
1.2.4 Tools.ini and NMAKE
NMAKE在读取makefiles之前读取Tools.ini,除非使用/R。它首先在当前目录中查找Tools.ini,然后在INIT环境变量指定的目录中查找。初始化文件中的NMAKE设置部分以[NMAKE]开头,可以包含任何makefile信息。在以数字符号(#)开头的单独行上是注释。
1.2.5 NMAKE的退出代码
代码 | 含义 |
---|---|
0 | 没有错误(可能一个警告) |
1 | 生成不完整(仅在使用/K时发布) |
2 | 程序错误,可能由以下问题之一引起:-makefile中的语法错误;-命令中的错误或退出代码;-用户的中断 |
4 | 系统错误-内存不足 |
255 | 目标不是最新的(仅在使用/Q时发布) |
1.3 NMAKE makefile内容和功能
2.cmake
- cmake -G Ninja是什么意思啊
cmake -G Ninja 是一个 CMake 命令,用于生成 Ninja 构建系统的构建文件。Ninja 是一种快速、轻量级的构建系统,可以代替传统的 Make 工具。使用 -G 参数指定生成器名称,这里指定生成 Ninja 构建系统所需的构建文件。
相关文献
NMAKE Reference
5分钟理解make/makefile/cmake/nmake
nmake命令(windows下的makefile)
nmake.exe使用整理