If this file name was /bin/make, then the recipe executed is cd subdir && /bin/make. By using gmake specifically you can use gnu make extensions without worrying about them being misinterpreted by some other make implementation. If you use a special version of make to run the top-level makefile, the same special version will be executed for recursive invocations. First, you need to install this package manager. Cd subdir && $(make) the value of this variable is the file name with which make was invoked. Anyway, there are several options for getting that: Directly download from make for windows using chocolatey. Once installed, you simply need to install make (you may need to run it in an elevated/administrator. 4. 所以出现了make工具 make工具可以看成是一个智能的批处理工具,它本身并没有编译和链接的功能,而是用类似于批处理的方式—通过调用makefile文件中用户指定的命令来进行编译和链接的。 5. makefile是什么? · for variable assignment in make, i see := and = operator. · the language accepted by gnu make is a superset of the one supported by the traditional make utility. Make is a gnu command, so the only way you can get it on windows is installing a windows version like the one provided by gnuwin32. Whats the difference between them?