美文网首页
几个Makefile的模板

几个Makefile的模板

作者: 叶迎宪 | 来源:发表于2018-11-22 21:22 被阅读0次

    静态库

    BIN_OBJ = lib/libg729.a
    
    CC       = gcc
    CFLAGS   = -g -I./include
    LINKTOOL = ar
    CMPEFLAG = -rs
    LINKFLAG = $(CMPEFLAG)
    
    
    SRC_FILES = $(wildcard src/*.c)
    OBJ_FILES = $(patsubst %.c, %.o, $(SRC_FILES))
    
    
    all : $(BIN_OBJ)    
        
    $(BIN_OBJ) : $(OBJ_FILES)
        mkdir -p ./lib
        $(LINKTOOL) $(LINKFLAG) $@ $(OBJ_FILES) 
        
    $(OBJ_FILES) : %.o : %.c
        $(CC) $(CFLAGS) -c $< -o $@
        
    clean:
        rm -f $(OBJ_FILES)
        rm -f $(BIN_OBJ)
    

    可执行文件

    BIN_OBJ = xiaoniu
    
    CC       = gcc
    CPP      = g++
    CFLAGS   = -g
    CPPFLAGS = -g -std=c++11
    LINKFLAG = -lcurl
    
    
    C_SRC_FILES = $(wildcard *.c)
    C_OBJ_FILES = $(patsubst %.c, %.o, $(C_SRC_FILES))
    CPP_SRC_FILES = $(wildcard *.cpp)
    CPP_OBJ_FILES = $(patsubst %.cpp, %.o, $(CPP_SRC_FILES))
    
    
    all : $(BIN_OBJ)    
        
    $(BIN_OBJ) : $(C_OBJ_FILES) $(CPP_OBJ_FILES)
        $(CPP) -o $@ $(C_OBJ_FILES) $(CPP_OBJ_FILES) $(LINKFLAG)
        
    $(C_OBJ_FILES) : %.o : %.c
        $(CC) $(CFLAGS) -c $< -o $@
    
    $(CPP_OBJ_FILES) : %.o : %.cpp
        $(CPP) $(CPPFLAGS) -c $< -o $@
        
    clean:
        rm -f $(C_OBJ_FILES)
        rm -f $(CPP_OBJ_FILES)
        rm -f $(BIN_OBJ)
    

    相关文章

      网友评论

          本文标题:几个Makefile的模板

          本文链接:https://www.haomeiwen.com/subject/usmrqqtx.html