下面是一个通用的 Makefile 模板,用于开发 C 语言应用程序:
# 编译器设置
CC = gcc
CFLAGS = -Wall -Wextra -std=c99
# 可执行文件名
TARGET = your_program
# 源文件和对象文件
SRCS = main.c file1.c file2.c
OBJS = $(SRCS:.c=.o)
# 默认目标
all: $(TARGET)
# 生成可执行文件
$(TARGET): $(OBJS)
$(CC) $(CFLAGS) $^ -o $@
# 生成目标文件
%.o: %.c
$(CC) $(CFLAGS) -c $< -o $@
# 清理生成的文件
clean:
rm -f $(OBJS) $(TARGET)
你可以根据自己的项目需求进行适当的修改和扩展。下面是对上述 Makefile 的解释:
CC
:指定使用的编译器,默认为 gcc。CFLAGS
:指定编译选项,例如启用所有警告和使用 C99 标准。TARGET
:指定生成的可执行文件名。SRCS
:列出项目中的源文件,将其逐个添加到该变量中。OBJS
:通过将.c
扩展名更改为.o
,自动生成对象文件列表。all
:默认目标,生成可执行文件。$(TARGET)
:生成可执行文件的规则,依赖于对象文件。$(OBJS)
:生成目标文件的规则,每个源文件都生成一个目标文件。clean
:清理生成的目标文件和可执行文件。
将上述内容保存为名为 Makefile
的文件,并将源文件的名称添加到 SRCS
变量中。然后,在终端中,进入包含 Makefile
的目录,并运行 make
命令来编译和构建你的应用程序。使用 make clean
命令可以清理生成的目标文件和可执行文件。
请根据你的项目需求进行相应的调整,例如添加库文件、头文件搜索路径等。