JNI- invoking problem: UnsatisifedLinkError


Hi,
I am using the JNI to load a shared library in C++ which has got reference to other C++ libraries. I am getting the following error while doing so.

/data2/usr/pvcs/cms_ac/cms/deliver/lib/libcreditdb.so: ld.so.1: /bin/../java/bin/../bin/sparc/native_threads/java: fatal: relocation error: file /data2/usr/pvcs/cms_ac/cms/deliver/lib/libcreditdb.so: symbol __1cLUtsDateTimeG__vtbl_: referenced symbol not found
java.lang.UnsatisfiedLinkError: /data2/usr/pvcs/cms_ac/cms/deliver/lib/libcreditdb.so: ld.so.1: /bin/../java/bin/../bin/sparc/native_threads/java: fatal: relocation error: file /data2/usr/pvcs/cms_ac/cms/deliver/lib/libcreditdb.so: symbol __1cLUtsDateTimeG__vtbl_: referenced symbol not found
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1382)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1306)
        at java.lang.Runtime.loadLibrary0(Runtime.java:749)
        at java.lang.System.loadLibrary(System.java:820)
        at CreditEngineService.<clinit>(CreditEngineService.java:69)
        at CreditEngineInterface.main(CreditEngineInterface.java:40)
kanuaravindAsked:
Who is Participating?
 
timbauerCommented:
The poblem appears to be that loadLibrary cannot find the entry point it is looking for.
The native library was probably compiled incorrectly.
Make sure the function you are going to call is wrapped in an extern "C" block.


0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.