如何在makefile中添加.c,.cc和.so文件以创建另一个.so



我想在 c 中使用 c 库,这就是为什么我为 c 编写包装器的原因A WR.H WR.CC 和测试程序 test.c 。因此,我编写了一个Makefile(下面给出(,为我的包装器创建 .so 文件。但它显示了对图书馆的未定义引用。有任何建议吗?

PROGRAM = MYWR
INCLUDEDIRS = -I/path/to/include
LIBDIRS = -L/path/to/lib/
LIBS = -labc -lbcd
CXXSOURCES = wr.cc
CSOURCES = test.c
CXXOBJECTS = $(CXXSOURCES:.cc=.o)
COBJECTS = $(CSOURCES:.c=.o)
CXXFLAGS = -g -Wall -std=gnu++11 $(INCLUDEDIRS)
CXX = g++
LDFLAGS = $(LIBDIRS) $(LIBS)
all: $(PROGRAM)
$(PROGRAM): $(CXXOBJECTS) $(COBJECTS)
$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(CXXOBJECTS) $(COBJECTS)

任何建议???

-lxxx移至命令行的末端?有时候订单确实很重要:

$(CXX) $(CXXFLAGS) -o $@ $(CXXOBJECTS) $(COBJECTS) $(LDFLAGS) 

最新更新