KB Article #179527
Error undefined symbol: SQLADR during RDJEXP execution
Problem
The cobol version of ITR501 calls a PG1.gnt subprogram which contains SQL statements (Pro*COBOL).
This programs are compiled with CobolIT.
The PG1.gnt has no access to the Oracle database, the following error occurs:
rdjfic: symbol lookup error: <RDJEXEC>/exit/PG1.gnt: undefined symbol: SQLADR
Resolution
Link the ITR501 with Oracle libraries. To do that, modify the entry libitr501Cob from the file $RXJ_EXEC/exit/exitfik.mak as below and recompile the exit ITR501:
Replace:
libitr501Cob: ObjItr501Cob
@echo
@echo ">>> Link of shared object $(LIB)/libitr501.$(SUFF_SHL) - Cobol version <<< "
$(LINK_SHL_IT) -o $(LIB)/libitr501.$(SUFF_SHL) $(OBJ)/ITR501.o \
$(OBJ)/rdjeuroc.o \ $(LIBEURO) $(LIBRDJEXP)
@echo
By:
libitr501Cob: ObjItr501Cob
@echo
@echo ">>> Link of shared object $(LIB)/libitr501.$(SUFF_SHL) - Cobol version <<< "
$(LINK_SHL_IT) -o $(LIB)/libitr501.$(SUFF_SHL) $(OBJ)/ITR501.o \
$(OBJ)/rdjeuroc.o \
$(ORACLE_HOME)/precomp/lib/cobsqlintf.o -L $(ORACLE_HOME)/lib/ -lclntsh \
$(LIBEURO) $(LIBRDJEXP)
@echo