help-gplusplus
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Shared library error


From: Terry
Subject: Shared library error
Date: Mon, 27 Jun 2005 15:33:58 -0400

Hello, hope one of you can help me.

I have built a shared library to be used as a JNI (java native interface)
for an app server.  This same code works perfectly on Sun, IBM, and Windows.
I use the -fPIC option when compiling and -Wl,soname...
and -Wl,-export-dynamic on the link.  Everything seems to build the .so
perfectly.  However, when the app server loads the shared lib, it generates
the following error:

<Jun 20, 2005 12:09:20 PM CDT> <Error> <HTTP> <BEA-101017>
<[ServletContext(id=70554084,name=ExceptionEngine,context-path=/ExceptionEng
ine)] Root cause of ServletException.
java.lang.UnsatisfiedLinkError: /usr/lib/ems/libJavaReportFactory.so:
/usr/lib/ems/libJavaReportFactory.so: undefined symbol:  _ZTV13ArcOpcTextCmd

If I look at the shared library with nm, it shows that the symbol is, in
fact, undefined.  This symbol corresponds to a default constructor which is
not declared or referenced (two other constructors are specified for that
class).  So my question- is this normal?  Am I missing a g++ compile option
somewhere?  Does this mean that every class that doesn't include a
specifically declared no-argument constructor will generate this error at
load time for a shared lib?  Or, is the possibly something that is a fault
of BEA weblogic, looking for all symbols and failing when one is not
defined, even if it is not used?

I understand that this might not be the correct forum, but any help would be
greatly appreciated.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]