Makefile
是 Linux 环境下用于自动化编译和构建项目的工具。它定义了一系列的规则来描述如何从源文件生成目标文件。以下是关于 Makefile
的基础概念、优势、类型、应用场景以及常见问题的解答:
# 编译器
CC = gcc
# 编译选项
CFLAGS = -Wall -g
# 目标可执行文件
TARGET = myprogram
# 源文件
SRCS = main.c func1.c func2.c
# 对象文件
OBJS = $(SRCS:.c=.o)
# 默认目标
all: $(TARGET)
# 链接对象文件生成可执行文件
$(TARGET): $(OBJS)
$(CC) $(CFLAGS) -o $@ $^
# 编译源文件生成对象文件
%.o: %.c
$(CC) $(CFLAGS) -c $< -o $@
# 清理生成的文件
clean:
rm -f $(OBJS) $(TARGET)
Makefile
或 makefile
。touch
命令更新时间戳。make -n
命令查看将要执行的命令,而不实际执行。make -d
命令查看详细的调试信息。ldd
命令检查可执行文件的动态链接库依赖。make clean
清理生成的文件。make
命令进行构建。通过以上步骤,可以有效地解决大多数与 Makefile 相关的问题。
领取专属 10元无门槛券
手把手带您无忧上云