Makefile 编译jsoncpp源码 生成静态库和共享库的例子

生成静态库:

#author: wanguofeng
#date:   2014-02-27

vpath %.cpp  

SRC1 = $(wildcard *.cpp ) \

SRC=$(notdir $(SRC1))

OBJ=$(patsubst %.cpp,%.o,$(SRC))

CXXFLAGS += -I inc

LDFLAGS +=

ALL: libjson.a

libjson.a:$(OBJ)
       ar -crv $@  $(OBJ)  $(LDFLAGS)

.PHONY:clean

clean:
       rm -f $(OBJ) libjson.a
#g++ -c json_value.cpp  -I include
#g++ -c json_writer.cpp -I include/
#g++ -c json_reader.cpp -I include/
#ar -crv libjsoncpp.a json_reader.o json_value.o json_writer.o



生成共享库:

#author: wanguofeng
#date:   2014-02-27

vpath %.cpp  
#vpath %.h inc sites

SRC1 = $(wildcard *.cpp ) \

SRC=$(notdir $(SRC1))

OBJ=$(patsubst %.cpp,%.o,$(SRC))

CXXFLAGS += -I inc -shared -fPIC

LDFLAGS +=

ALL: libjson.so

libjson.so:$(OBJ)
$(CXX) -shared -o $@ $(OBJ)  $(LDFLAGS)

.PHONY:clean

clean:
rm -f $(OBJ) libjson.so


你可能感兴趣的:(静态库,Makefile生成共享库)