makefile 错误 求教
/usr/informix/bin/esql -o ../bin/send ../src/Send.o -I../include -I/home/tong1/tong/incl -L/home/tong1/tong/lib /home/ton
g1/tong/lib/libtl.a /home/tong1/tong/lib/librc5.a -L../lib -lpub -ldb -lmsg -lfile -lalllog -lspecial -ltrans -lm -ltl -lrc5 -sta
tic
i386ld fatal: archive symbol directory is missing from archive ../lib/libpub.a
execute 'ar ts ../lib/libpub.a' to restore archive symbol directory
*** Error code 13 (bu21)
以上是错误提示;
这是我执行的makefile文件:
###########################################################
INFORMIXDIR=/informix/infor32
LD_LIBRARY_PATH=$INFORMIXDIR/lib:$INFORMIXDIR/lib/esql
ESQL=${INFORMIXDIR}/bin/esql
#COMMFLAG= -D__COMM_TQ -DDEBUG -DDEBUG1 -DDEBUG2 -DDEBUG3 -DDEBUG4
COMMFLAG= -D__COMM_TQ -DEXIST_TEXT -DDEBUG
COMLIB=-lm -static
############################################################
# LOCAL ENV
GFBINDIR=../bin
GFLIBDIR=../lib
GFINCL=../include
GFSRCDIR=../src
SRVPUB=../pub
############################################################
# TONGLINK
TQDIR=$(HOME)/tong33
TQINCDIR=$(TQDIR)/incl
TQLIBDIR=$(TQDIR)/lib
TQCFLGS=-I$(TQINCDIR) -L$(TQLIBDIR)
TONGLINK= $(TQLIBDIR)/libtl.a $(TQLIBDIR)/librc5.a
COMMLIB=-lm -ltl -lrc5 -static
# TONGLINK
##################################################
SENDOBJS= ${GFSRCDIR}/Send.o
RESPOBJS= ${GFSRCDIR}/Resp.o
LIBS= $(GFLIBDIR)/libpub.a \
$(GFLIBDIR)/libmsg.a \
$(GFLIBDIR)/libdb.a \
$(GFLIBDIR)/libfile.a \
$(GFLIBDIR)/libtrans.a \
$(GFLIBDIR)/liballlog.a \
$(GFLIBDIR)/libspecial.a
all: $(GFBINDIR)/send \
$(GFBINDIR)/resp
.SUFFIXES:
.SUFFIXES: .o .ec .c .h .a
$(GFBINDIR)/send: $(SENDOBJS) $(LIBS)
$(ESQL) -o $@ $(SENDOBJS) -I$(GFINCL) $(TQCFLGS) $(TONGLINK) -L$(GFLIBDIR) -lpub -ldb -lmsg -lfile -lalllog -lspecial -ltrans $(COMMLIB)
$(GFBINDIR)/resp: $(RESPOBJS) $(LIBS)
$(ESQL) -o $@ $(RESPOBJS) -I$(GFINCL) $(TQCFLGS) $(TONGLINK) -L$(GFLIBDIR) -lpub -ldb -lmsg -lfile -lalllog -ltrans -lgetdata -lmsg -lspecial $(COMMLIB)
clean:
rm -f $(SENDOBJS) 2>/dev/null
rm -f $(GFSRCDIR)/Send.c 2>/dev/null
rm -f $(GFBINDIR)/send 2>/dev/null
rm -f *.o
.ec.o:
$(ESQL) -g -c -o $@ $(COMMFLAG) -I$(GFINCL) $(TQCFLGS) -L$(GFLIBDIR) $(COMMLIB) $<
rm -f $(*F).c
这个位啥子勒!!