下面是一个示例的Makefile,用于将main.cpp、redis.h和redis.cpp编译成可执行文件 run:
CC = g++
CFLAGS = -Wall -Wextra
LDFLAGS = -lredis
all: run
run: main.o redis.o
$(CC) $(CFLAGS) main.o redis.o -o run $(LDFLAGS)
main.o: main.cpp redis.h
$(CC) $(CFLAGS) -c main.cpp
redis.o: redis.cpp redis.h
$(CC) $(CFLAGS) -c redis.cpp
clean:
rm -f *.o run
这个Makefile中包含了几个规则:
all: 默认目标,即运行make命令时执行的规则。依赖于run规则。run: 目标可执行文件。依赖于main.o和redis.o规则,使用指定的链接器选项-lredis进行链接。main.o: 目标源文件main.cpp的目标对象文件,通过编译该源文件生成。redis.o: 目标源文件redis.cpp的目标对象文件,通过编译该源文件生成。clean: 清理目标文件和可执行文件。
请确保在保存为 Makefile 时没有额外的空格或缩进,并且规则之间使用制表符而不是空格进行缩进。
要编译项目,请在命令行中运行以下命令:
make
这将会生成可执行文件 run,你可以运行它来测试你的代码。如果想要清理项目,请运行以下命令:
make clean
内容由零声教学AI助手提供,问题来源于学员提问




