1
此Makefile如何使C程序甚至不指定编译器?
我正在使用《高级Linux编程(2001)》[代码]一书中的Makefile 。看到GNU make确实正确编译了代码,甚至没有在Makefile中指定编译器,我感到很奇怪。这就像没有任何食谱的烘烤! 这是代码的最低版本: 测试 int main(){} 生成文件 all: test 并使其真正起作用!这是它执行的命令: cc test.c -o test 我找不到任何有用的文档。这怎么可能? PS另加一点注意:甚至没有指定语言;因为test.c可用,所以GNU make使用cc。如果存在test.cpp或test.cc(不存在test.c),则使用g++(而不是c++)。