XX = g++
XXFLAG = -g -O2 -D_STLP_USE_SIMPLE_NODE_ALLOC -DEMBEDED -D_LARGEFILE64_SOURCE
LIBS= -lpthread -lrt -ldl -lz -lssl -lcrypto
TARGET=test
#srcs
SRCS_CPP += $(wildcard ./json/*.cpp)
SRCS_CPP += $(wildcard ./*.cpp)
#objs
OBJS_CPP = $(patsubst %.cpp, %.o, $(SRCS_CPP))
##########################################################
# building
##########################################################
all:$(TARGET)
$(TARGET) : $(OBJS_CPP)
$(XX) $^ -o $@ $(LIBS)
.cpp.o:
$(XX) $(XXFLAG) -c -o $@ $^
.PHONY : clean
clean:
rm -f $(OBJS_CPP) $(TARGET)
1.
自动
遍历
源
文件
自动
遍历
源
文件
文件
部分参考 https://blog.csdn.net/yuliying/article/details/49635485,
AllDIRS := $(shell ls -R | grep '^\./.*:$$' | awk '{gsub(":","");print}') .
CSRCS = $(foreach n,$(All
有时候,我们在开发的时候需要将本次工程的代码分成多个子目录来编写,但是在
Makefile
的编写上却是个问题,下面我就教大家怎么构建带有子
文件
夹的源代码目录的
自动
扫描
编译
下面这张图是我的
文件
树
这里面src目录下是我的源代码,我将功能代码分成了三个子模块,分别为test1, test2, test3, 调用这三个子模块的是main.
cpp
文件
,下面我将这三个子模块的代码// src/
针对多
文件
夹
makefile
编写,可以写一个通用
makefile
,
遍历
出每个
文件
夹,然后执行每个
文件
夹
makefile
,这样好处就是我们只需添加我们新增加的目录里面
makefile
,而不必理会之前的
文件
夹结构,非常方便。
1.首先
遍历
当前目录SRC_PATH下
文件
夹
SRC_FOLDER := $(shell find $(SRC_PATH) -maxdepth 1 -type d)
BA...
SUBINCS = $(shell ls $(INC))
INC_FLAGS += $(foreach n,$(SUBINCS),$(wildcard ./$(INC)/$(n)/*.h))
@echo $(INC_FLAGS)
@echo $(INC)
@echo $(SUBINCS)
第二句是取include
文件
夹下的所有子目录名
foreach及wildcard函数的用法大家可自...
我有projects,其中包括根项目下的
makefile
喜欢project-Folder1-Folder2-app1-service1-
Makefile
现在我想进入
makefile
循环中的
文件
夹(在根目录下)。即在project下打印
文件
夹名称,
文件
夹可以从projectX更改为projectN这一棘手的部分,是否可能?这就是你要找的吗?只列出在bash中使用ls的目录@arjoonn-我可以用它...
AR=arLD=ldCC=gcc
CFLAGS = -O2 -Wall -I./Test \ -I./Test/Test1 \
#注:"\"后面不能有空格,并且该句写完后最好有个换行
#注释部分推荐在单独的一行编写
#动态库...
CFLAG = -g -O2 -std=c++0x -Wno-deprecated #-Wall
LIBS = -lm -lstdc++
EXCUTABLE_FILE = test_main
TEST_SUBDIR=./test_subdir/
SOURCE=$(wildcard ./...