1 Star 0 Fork 0

侧帽之独孤 / multiClient

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
Makefile 2.22 KB
一键复制 编辑 原始数据 按行查看 历史
侧帽之独孤 提交于 2021-11-13 12:29 . 第一次提交
# 说明将此文件名改为 makefile
# 库文件放在 include 文件中
# makefile 放在 C C++ 文件所在的目录中
#
#CROSS = arm-linux-gnueabihf-
CROSS =
CC := $(CROSS)gcc # CC 定义编译器
# 自己添加的 .h 的文件夹
L1_INCLUDES = -I./DataStruct\
-I./FrameControl
L2_INCLUDES =
#CCFLAGS += -Iinclude
# include 是多C C++ 文件所包含的头文件目录(H文件)
CCFLAGS += -I.
#CCFLAGS += -I..
CCFLAGS += $(L2_INCLUDES) $(L1_INCLUDES)
LIBS = -lpthread -lrt # 动态链接库:多线程用
# CCFLAGES 是编译选项
#CFLAGS = -O0 -g3 -Wall -c -fmessage-length=0 -Wno-deprecated-declarations $(L3_INCLUDES)
CFLAGS = -O0 -g3 $(CCFLAGS)
LINKOPTS =
#LINKOPTS = -Llib
# LIB库目录,在PPP目录下
LDFLAGS = $(LIBS)
# .c 所在目录
SRCDIR = ./ # main.c 所在的文件夹
L1DIR = ./DataStruct
L2DIR = ./FrameControl
OBJDIR = ./build # 编译的结果保存的文件
SRCS = $(shell find $(SRCDIR) $(L1DIR) $(L2DIR) $(L3DIR) -name "*.c" ) # $(shell find $(SRCDIR) -name "main.c" )
OBJS = $(patsubst $(SRCDIR)/%.c, $(OBJDIR)/%.o, $(SRCS))#把SRCS中的.c文件替换成.o文件
DEPS = $(patsubst %.o, %.d, $(OBJS))#把OBJS中的.o文件替换成.d文件
CPPFILES +=
#OBJ = $(CFILES:.c=.o) $(CPPFILES:.c=.o)
EXE = build/S90Agent # EXE是我们要生成的目标文件.
all: $(EXE)
#-include $(DEPS)#ASK 啥意思, 把这一行打开,好像就不进行编译了
$(EXE) : $(OBJS)
#$(CC) $(CFILES:.c=.o) $(CPPFILES:.cpp=.o) $(CCFLAGS) $(LDFLAGS) $(LINKOPTS) $(LIBFILES) -o $@
#@$(CC) -o $(EXE) $(OBJS) $(CCFLAGS) $(LDFLAGS)
@$(CC) -o $(EXE) $(OBJS) $(LDFLAGS)
@echo "[Building] "$@
@echo "[Completed] compiler $(EXE) successed!!!" # 编译成功就会打印这条信息
$(OBJDIR)/%.o: $(SRCDIR)/%.c
# @[ ! -e $(dir $@) ] & mkdir -p $(dir $@)#ASK 啥意思
@echo "[Compiling] "$@
@$(CC) $(CFLAGS) -o $@ -c $<
$(OBJDIR)/%.d: $(SRCDIR)/%.c
@[ ! -e $(dir $@) ] & mkdir -p $(dir $@)
@$(CC) -MM $(CFLAGS) $< > $@.tmp
@sed 's,\(.*\)\.o[ ]*:,$(dir $@)\1.o :,g' < $@.tmp > $@;
@rm -f $@.tmp
clean:
rm -f $(EXE)
#rm -rf $(OBJS) $(DEPS)
rm -rf $(OBJDIR)
# 清除生成的文件
.SUFFIXES: .cpp .c .o
# 通用的.cpp .c .o 文件
#.c.o:
# $(CC) -O -o $*.o -c $(CCFLAGS) $*.c
#.cpp.o:
# $(C++) -c -o $*.o $(CCFLAGS) $*.cpp
C
1
https://gitee.com/hansen_gitee/Cproject.git
git@gitee.com:hansen_gitee/Cproject.git
hansen_gitee
Cproject
multiClient
master

搜索帮助