All,
I getting a runtime error with a set of applications.
exec(): 0509-036 Cannot load program avat5 because of the following errors:
0509-130 Symbol resolution failed for /software/CSI/lib/libcsi_hlserver.a(shr.o) because:
0509-136 Symbol CSI_svrinit (number 66) is not exported from
dependent module avat5.
0509-136 Symbol CSI_svrdone (number 67) is not exported from
dependent module avat5.
0509-192 Examine .loader section symbols with the
'dump -Tv' command.
I have built the program using the following makefile :-
Code:
CC=cc
HOME=/home/viesgw
CSIHOME=/software/CSI
LIBPATH=$(CSIHOME)/lib
INGRES_LIB=/software/ingres/II/ingres/lib
CSI_INC_FLAG=/software/CSI/include
CSI_DEV_INC_FLAG=${HOME}/cope2/servers
CSI_LIB_FLAGS= -L$(LIBPATH) -lm -lcsi_hlserver \
-lcsi_report
INGRES_LIB_FLAGS=-L$(INGRES_LIB) libingres.a
USUAL_LIB_FLAGS= -lpthread -lm -lnsl -lc
FLAGS=$(CSI_LIB_FLAGS) $(INGRES_LIB_FLAGS) $(USUAL_LIB_FLAGS)
avat5: avat5.o
$(CC) -o avat5 avat5.o -D_64BITS $(FLAGS)
avat5.o: avat5.c
cc -c -D_64BITS -I${CSI_INC_FLAG} -I${CSI_DEV_INC_FLAG} avat5.c
avat5.c: avat5.sc
esqlc avat5.sc
The are several library and header files required at link time and runtime :-
library
libcsi_hlclient.a
libcsi_report.a
header file
csi_hl.h
Then it specifies that only libcsi_report.a is required at runtime
the LIBPATH is set to /software/CSI/lib
The csi_hl.h lives in
/software/CSI/include
THe CSI_svrinit function that is giving the error lives in
/software/CSI/include/sys
Can anyone see a problem with the make file and the is the use of the -I causing issues ?
Any help gratefully received.
Also meant to say the same code is working against an earlier implementation of the stack on AIX 4.3.