一、NMAKE和Makefile
1.1、NMAKE - 命令解释器,根据Makefile文件中定义的脚本,完成项目的编译等操作。
1.2、Makefile - 定义编译/链接等脚本语言。
1.3、Makefile文件的使用
1.3.1基本语法规则
window.exe:window.obj //依赖行
cl.exe window.c /c //命令行
link.exe window.obj user32.lib
window.exe的依赖项是window.obj,如果window.obj被重新改写,window.exe将重新生成。
通过时间戳(time stamp)判断程序是否需要重新编译链接,
如果当文件修改最后时间与时间戳不同,将会重新编译链接。
1.3.2执行过程
1、NMAKE首先找到第一个依赖行,根据依赖行之间的关系,建立依赖树。
例如:
A:B
B:C
C:D
NMAKE会建立对应的依赖树
A
|-B
|-C
|-D
2、在树建好后,NMAKE执行D的命令行,然后依次执行父节点的命令行。
3、在A的命令行执行结束后,退出NMAKE。
4、如果需要执行指定的依赖行,需要在执行NMAKE时增加依赖行的名称。
NMAKE /f Makefile.mak B <--指定从B执行
1.4使用
1.4.1NMAKE指定文件名
NMAKE /f Makefile.mak
1.4.2使用缺省的文件名
NMAKE在执行时会自动查找这个文件。