Re: C-ISAM on HPUX Shared Library
Posted in 2004
Don wrote: > I am trying to interface Java to C-ISAM. This requires the C-ISAM > libraries to be shared libraries. When I run the program, I get the > error: > > *** PROGRAM HAS ISAM FILE USAGE, SHOULD BE LINKED WITH C-ISAM LIBRARY > USING -lis > am OPTION (988) > Stack_Trace: error while unwinding stack > ( 0) 0xc097f3b0 __io_ded + 0x408 [/usr/lib/libcl.2] > ( 1) 0xc005f5a4 __stub_err + 0x14 [/usr/lib/libisamstub.1] > ( 2) 0xc005f744 isopen + 0x10 [/usr/lib/libisamstub.1] > ( 3) 0xc076f7d4 LearnerInquiryDA + 0xc4 [./libLearnerInquiry.sl] > ( 4) 0xc076f64c Java_HughSFSBridge_CISAMDataAccess_LearnerInquiry + > 0xac [./ > libLearnerInquiry.sl] > > My compile looks like: > > cc -Ae +u4 +z -c -D_HPUX -D_POSIX_C_SOURCE=199506L \\ > -D_XOPEN_SOURCE_EXTENDED \\ > -I/opt/java1.4/include -I/opt/java1.4/include/hp-ux \\ > LearnerInquiry.c LearnerInquiryDA.c > > My link looks like: > > ld -b -lisam -o libLearnerInquiry.sl LearnerInquiry.o > LearnerInquiryDA.o > > > The isam libraries in the /usr/lib directory, are: > > libisam.a > libisamnls.a > libisamstub.1 > libisamstub.sl > llib-lisam > > Does C-ISAM support shared libraries? No. In general, C-ISAM is only supplied as a static (non-shared) library. You could look to see which version you have, and if it isn't 7.25 or later, you could ask to see whether the upgrade would help. But, IIRC, we still don't provide shared libraries by default. It certainly appears that you don't have one - the libisamstub.sl is a shared library, but appears to be a stub library. -- Jonathan Leffler #include <disclaimer.h> Email: jleffler@earthlink.net, jleffler@us.ibm.com Guardian of DBD::Informix v2003.04 -- http://dbi.perl.org/