makefile 和 GUNmakefile
时间: 2024-03-18 12:35:34 浏览: 163
makefile是一种文件,其中包含一组规则和命令,用于告诉make工具如何编译和链接程序。默认情况下,make会在当前目录下查找名为“GNUmakefile”、“makefile”或“Makefile”的文件,并读取其中的规则和命令。如果找不到这些文件,则make将不会执行任何操作。
GUNmakefile是一种特殊的makefile文件,只有GNU make工具才能识别。它的作用与普通makefile相同,但是它的文件名不是标准的“makefile”或“Makefile”,而是“GNUmakefile”。
以下是一个简单的makefile示例,用于编译一个名为“hello”的C程序:
```makefile
hello: hello.c
gcc -o hello hello.c
```
在上面的示例中,“hello”是目标文件,“hello.c”是依赖文件,gcc命令用于编译和链接程序。要使用make工具执行上述makefile,请在终端中导航到包含makefile的目录,并键入以下命令:
```
make
```
这将执行makefile中定义的规则和命令,并生成名为“hello”的可执行文件。
相关问题
makefile 和GUNmakefile 那个先执行
根据引用[2]所述,默认情况下,make会按照文件名顺序寻找makefile文件并执行,查找的文件名顺序为:“GNUmakefile”、“makefile”、“Makefile”。因此,如果当前目录下同时存在“GNUmakefile”和“Makefile”文件,make会先执行“Makefile”。如果当前目录下只有“GNUmakefile”文件,则make会执行该文件。但是需要注意的是,“GNUmakefile”是我们不推荐使用的文件名,因为只有“GNU make”才可以识别,而其他版本的make程序只会在工作目录下“makefile”和“Makefile”这两个文件。因此,为了保证makefile的可移植性和兼容性,建议使用“makefile”或“Makefile”作为文件名。
阅读全文