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