以下是一个包含接口(.h 文件)的 Makefile 示例解决方案:
# 定义编译器和编译选项
CC = gcc
CFLAGS = -Wall -Werror
# 定义目标文件和依赖关系
TARGET = program
OBJS = main.o interface.o
DEPS = interface.h
# 默认目标
all: $(TARGET)
# 生成目标文件
$(TARGET): $(OBJS)
$(CC) $(CFLAGS) -o $@ $^
# 生成对象文件
%.o: %.c $(DEPS)
$(CC) $(CFLAGS) -c -o $@ $<
# 清理生成的文件
clean:
rm -f $(TARGET) $(OBJS)
在这个示例中,Makefile 文件包含一个目标文件 program
和两个对象文件 main.o
和 interface.o
。interface.h
是一个接口文件,用于声明接口函数。
Makefile 的规则如下:
all
是默认目标,它依赖于 $(TARGET)
,即 program
目标。$(TARGET)
目标依赖于 $(OBJS)
,即 main.o
和 interface.o
。$(OBJS)
目标分别依赖于对应的 .c
文件和 $(DEPS)
,即 interface.h
。%.o
规则定义了生成对象文件的方法,它依赖于对应的 .c
文件和 $(DEPS)
。clean
目标用于清理生成的文件,即删除 $(TARGET)
和 $(OBJS)
。你可以根据自己的项目需求进行相应的修改和扩展。
上一篇:包含接口作为参数的方法