[GNU/Linux]标准Makefile 1.1 生成动态库

######### 标准Makefile Lv1.1 / 生成动态库 ########

EXE=libexample.so
SUBDIR=src 
CXX_SOURCES =$(foreach dir,$(SUBDIR), $(wildcard $(dir)/*.cpp))
CXX_OBJECTS=$(patsubst  %.cpp, %.o, $(CXX_SOURCES))
DEP_FILES  =$(patsubst  %.o,  %.d, $(CXX_OBJECTS))

$(EXE): $(CXX_OBJECTS)
    g++ -shared $(CXX_OBJECTS) -o $(EXE)
    
%.o: %.cpp
    g++  -c -fPIC -MMD $<  -o  $@

-include $(DEP_FILES)

clean: 
    rm  -rf  $(CXX_OBJECTS)  $(DEP_FILES)  $(EXE)

test:
    echo $(CXX_OBJECTS)

 

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注