跟我一起写makefile
时间: 2023-08-26 19:07:11 浏览: 53
好的,我们一起写一个简单的makefile来编译一个C程序吧。
假设我们有一个main.c文件和一个hello.c文件,我们需要将它们编译成一个可执行文件。
首先,我们需要定义一些变量来简化我们的makefile:
```
CC = gcc
CFLAGS = -Wall
```
- `CC`:定义我们使用的C编译器,这里使用gcc。
- `CFLAGS`:定义编译选项,这里使用-Wall表示开启所有警告。
接下来,我们需要定义一些规则来告诉make如何编译我们的程序。
```
all: hello
hello: main.o hello.o
$(CC) $(CFLAGS) -o hello main.o hello.o
main.o: main.c
$(CC) $(CFLAGS) -c main.c
hello.o: hello.c
$(CC) $(CFLAGS) -c hello.c
clean:
rm -f *.o hello
```
- `all`:定义一个默认的目标,这里是hello。
- `hello`:定义如何生成可执行程序hello,依赖于main.o和hello.o两个目标。
- `main.o`和`hello.o`:分别定义如何生成这两个目标,依赖于对应的.c文件。
- `clean`:定义如何清理生成的目标文件和可执行文件。
最后,我们可以在终端中运行`make`命令来编译我们的程序。如果一切正常,我们将得到一个名为hello的可执行文件。
如果需要清理生成的目标文件和可执行文件,可以运行`make clean`命令。
这是一个简单的makefile示例,当然,实际的makefile可能更加复杂和庞大。