跟我一起写makefile
时间: 2023-08-26 07:07:06 浏览: 77
跟我一起写Makefile
好的,我们一起来写一个简单的makefile。
首先,我们需要指定编译器和编译选项:
```
CC = gcc
CFLAGS = -Wall -Wextra
```
接着,我们定义目标文件和依赖关系:
```
TARGET = hello_world
SRCS = main.c hello.c
OBJS = $(SRCS:.c=.o)
```
这里,我们编译了两个源文件,分别是 main.c 和 hello.c,我们将它们的目标文件分别命名为 main.o 和 hello.o。
接下来,我们定义编译规则:
```
$(TARGET): $(OBJS)
$(CC) $(CFLAGS) -o $@ $^
```
这里,我们定义了一个以 $(TARGET) 为目标的规则,它依赖于 $(OBJS) 中的所有目标文件。然后我们使用 $(CC) 和 $(CFLAGS) 编译这些目标文件,并将它们链接成一个可执行文件。
最后,我们定义清理规则:
```
clean:
rm -f $(OBJS) $(TARGET)
```
这里,我们定义了一个规则,用于清理所有目标文件和可执行文件。
完整的makefile代码如下:
```
CC = gcc
CFLAGS = -Wall -Wextra
TARGET = hello_world
SRCS = main.c hello.c
OBJS = $(SRCS:.c=.o)
$(TARGET): $(OBJS)
$(CC) $(CFLAGS) -o $@ $^
clean:
rm -f $(OBJS) $(TARGET)
```
这样,我们就写好了一个简单的makefile。
阅读全文