代码拉取完成,页面将自动刷新
# 方便起见一般都会先定义编译器链接器
CC = gcc -I /home/aston/sqlite-autoconf-3360000/build/include
LD = gcc -L /home/aston/sqlite-autoconf-3360000/build/lib
FLAGS = -pthread
LIBS = -lsqlite3
# 正则表达式表示目录下所有.c文件,相当于:SRCS = main.c a.c b.c
SRCS = $(wildcard *.c)
# OBJS表示SRCS中把列表中的.c全部替换为.o,相当于:OBJS = main.o a.o b.o
OBJS = $(patsubst %c, %o, $(SRCS))
# 可执行文件的名字
TARGET = app
# .PHONE伪目标,具体含义百度一下一大堆介绍
.PHONY:all clean
# 要生成的目标文件
all: $(TARGET)
rm *.o
# 第一行依赖关系:冒号后面为依赖的文件,相当于Hello: main.o a.o b.o
# 第二行规则:$@表示目标文件,$^表示所有依赖文件,$<表示第一个依赖文件
$(TARGET): $(OBJS)
$(LD) $(FLAGS) $^ -o $@ $(LIBS)
# 上一句目标文件依赖一大堆.o文件,这句表示所有.o都由相应名字的.c文件自动生成
%.o:%.c
$(CC) -g -c $^
# make clean删除所有.o和目标文件
clean:
rm -f $(OBJS) $(TARGET) *.db
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。