我生成了一个静态库libxbase.a,然后调用这个库,但是不知道为什么总说找不到库中的函数,不知道是为什么,请各位高手指点阿,谢谢了!
我的makefile如下:
TARGET = FileClient
CC = gcc
C++ = g++
LINK = g++
COMPILER_FLAGS=-D_REENTRANT -D__USE_POSIX -D__linux__ -pipe -fPIC
CORE_LINK_LIBS= -lpthread -ldl -lnsl -lresolv -lm -lcrypt -lstdc++
CCFLAGS = $(COMPILER_FLAGS) -g -c
C++FLAGS = $(COMPILER_FLAGS) -g -c
LIBS = -L../xbase/xbase/xbase.a
LIBS = $(CORE_LINK_LIBS)
INCLUDES = -I.
INCLUDES += -I../xbase/include
INCLUDES += -I../xbase/xbase
C++FILES = main.cpp\
FileAgent.cpp\
Task2String.cpp\
OSQueue.cpp\
Config.cpp\
Utils.cpp
OBJFILE = $(C++FILES:.cpp=.o)
DEPENDS = $(C++FILES:.cpp=.d)
all:$(TARGET)
.SUFFIXES: .d
%.d:%.cpp
$(C++) -MM $< $(INCLUDES) | sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' >$@
-include $(DEPENDS)
$(TARGET): $(OBJFILE)
$(LINK) -o $@ $^ $(LIBS)
%.o:%.cpp
$(C++) -o $@ $(C++FLAGS) $< $(INCLUDES)
clean:
rm -rf $(TARGET)
rm -rf $(OBJFILE)
rm -rf $(DEPENDS)
报告的错误是:/FileAgent.cpp:197: undefined reference to `stx_create_io_tcp'(库中的函数)