Debashis Tripathy wrote:
Hi All,

I am trying to build an XML application on Solaris 8, which links to
Xerces-C 2.7.0. I was able to build Xerces-C using the following commands:

$ ./runConfigure -p solaris -c gcc -x g++
$ make

The Xerces library got built fine, but while compiling my application I am
getting some linker errors like the following:

Undefined
first referenced
 symbol

in file
bool xercesc_2_7::DOMParser::parseFirst(const unsigned
short*const,xercesc_2_7::XMLPScanToken&)
./../../../bld/SunOS/urel/tf/SaTFXSrc.o
xercesc_2_7::DOMParser::DOMParser(xercesc_2_7::XMLValidator*const,xercesc_2_7::MemoryManager*const,xercesc_2_7::XMLGrammarPool*const)
./../../../bld/SunOS/urel/tf/SaTFXSrc.o
xercesc_2_7::__RTTI__1nLxercesc_2_7QDOM_DOMException_
./../../../bld/SunOS/urel/tf/SaTFXSrc.o
[Hint: static member xercesc_2_7::__RTTI__1nLxercesc_2_7QDOM_DOMException_
must be defined in the program]

Is there something that I missed out  while compiling Xerces? I have
included all the appropriate include files of Xerces in my program and
trying to link to libxerces-c.so, which is present in the folder.
Are you using the same compiler for both building Xerces-C and your application? Those look like symbols for Sun's compiler, and not GCC.

You also might posting your link command line.

Also, to the best of my knowledge DOMParse::parseFirst () method takes the
first parameter as "const XMLCh* const" or "const char* const". Why is the
linker looking for a the same method with "const unsigned short* const" as a
parameter?
Because XMLCh is a typedef for unsigned short on Solaris.

Dave

Reply via email to