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