Hi,

 

I am able to build xerces2.8 library on Solaris 8 with the compiler Sun
WorkShop 6 update 2 C++ 5.3. I could link the xerces2.8 library with our
application 

 

While running our application, we are getting the following error

bash-3.00# ./apachectl start

httpd: Syntax error on line 411 of /usr/getaccess/Apa/conf/httpd.conf:
Cannot load /opt/MyApp/Apache22/lib/libApache22Connector.so into server:
ld.so.1: httpd: fatal: relocation error: file
/opt/MyApp/Apache22/lib/libEmbeddedConfigurationClient.so: symbol
__1cLxercesc_2_8JGA_XMLUniWfgXercescDefaultLocale_: referenced symbol
not found

 

(For more information on our application, when apache webserver is
started, httpd.conf loads our application/webconnector
libApache22Connector.so which inturn loads one of our library
libEmbeddedConfigurationClient.so. libEmbeddedConfigurationClient.so
will use libxerces-c.so)

 

We could search with nm command and found that the symbol in
libxerces-c.so doesn't match with the symbol in the library
libEmbeddedConfigurationClient.so

bash-2.03$ /usr/ccs/bin/nm libxerces-c.so |grep DefaultLocale

[11799] |   4186018|       6|OBJT |GLOB |0    |21
|__1cLxercesc_2_8GXMLUniWfgXercescDefaultLocale_

bash-2.03$ /usr/ccs/bin/nm libEmbeddedConfigurationClient.so |grep
DefaultLocale 

[1293]  |         0|       0|NOTY |GLOB |0    |UNDEF
|__1cLxercesc_2_8JGA_XMLUniWfgXercescDefaultLocale_

 

 

We had done similar work on Linux (suse) but the symbol matches in both
the libraries.

linux-32suse:/opt/MyApp/Apache22/lib # nm libxerces-c.so.28 |grep
DefaultLocale

00333328 R _ZN11xercesc_2_86XMLUni22fgXercescDefaultLocaleE

linux-32suse:/opt/MyApp/Apache22/lib # nm
libEmbeddedConfigurationClient.so |grep DefaultLocale

         U _ZN11xercesc_2_86XMLUni22fgXercescDefaultLocaleE

 

Any suggestions on this?

 

Regards,

Anil

 

Reply via email to