o(* ̄︶ ̄*)o

  博客园  :: 首页  ::  :: 联系 :: 订阅 订阅  :: 管理

Makefile文件编写

#Makefile文件编码格式:ASCII; 即换行符是(LF)
#目录:
#    build     构建目录
#    bin     执行文件目录
#    lib     静态库目录
#    libso     动态库目录
#    src     源码目录
#    include 头文件目录


CC=g++ -g

PATH_BUILD=build/
PATH_BIN=bin/
PATH_SRC=src/
PATH_INC=include/
PATH_LIB=lib/
PATH_LIBSO=libso/

#源码相关(.h .cpp)
SOURCE_INCLUDE=$(PATH_SRC)*.h         
SOURCE=$(PATH_SRC)*.cc 
 
#定义宏(编译阶段,执行/忽略 ifndef/ifdef 的代码块)
MACRO=

#过程文件,结果文件,依赖库头文件,依赖库文件(lib文件名.so 或者 lib文件名.a)
EXE=nindb
OBJ=*.o
LIBS=-lpthread
PATH_LIBS=-L$(HOME)/lib -L$(HOME)/libso
PATH_LIBS_INC=-I. -I$($HOME)/include


#链接过程==>结果文件 编译文件 链接库地址 链接库(-l链接库名字,即lib链接库名字.so)
$(EXE):$(OBJ)
    $(CC) -o $(PATH_BIN)$(EXE) $(PATH_BUILD)$(OBJ) $(PATH_LIBS) $(LIBS)


#编译过程==>初始化宏 源码 头文件 依赖库头文件
$(OBJ):$(SOURCE) $(SOURCE_INCLUDE)
    $(CC) -c $(MACRO) $(SOURCE) $(SOURCE_INCLUDE) $(PATH_LIBS_INC)
    mv *.o $(PATH_BUILD)

clean:
    #rm -rf *.o
    rm -rf ${PATH_BUILD}*.o $(PATH_BIN)*

 

posted on 2024-06-18 10:24  熊本熊の熊  阅读(9)  评论(0)    收藏  举报