Solved

Linking Error on Solaris

Posted on 2003-11-09
1
319 Views
Last Modified: 2013-12-05
Hello

I am getting this error while proting code from windows to Solaris

Undefined                       first referenced
 symbol                             in file
xercesc_2_3::XMLUni::fgDOMNamespaces Doc.o
[Hint: static member xercesc_2_3::XMLUni::fgDOMNamespaces should be defined in the program ,see Annotated Reference Manual (ARM) Section 9.4]

The code causing the error:
xercesc::DOMBuilder* CDoc::GetBuilder()
{
      if (sm_Builder == NULL)
      {
            sm_Builder = GetImplementationLS()->createDOMBuilder(xercesc::DOMImplementationLS::MODE_SYNCHRONOUS,0);

            if (sm_Builder == NULL)
                  throw CXmlException(CXmlException::eError1,"Could not create xercesc::DOMBuilder");

*****            sm_Builder->setFeature(xercesc::XMLUni::fgDOMNamespaces, true);            ******
      }

      return sm_Builder;
}
0
Comment
Question by:arabolla
1 Comment
 
LVL 6

Accepted Solution

by:
GaryFx earned 250 total points
ID: 9709601
How are you linking your code?

Check out this item in the Xerces FAQ:  http://xml.apache.org/xerces-c/faq-build.html#faq-6 , entitled "Why does my application gives unresolved linking errors?"

The message you quoted is saying that you're missing a definition for a Xerces object, namely XMLUni::fgDOMNamespaces.  The most common cause of a missing symbol from a library is failure to include the appropriate library on the link line.  The Xerces faq indicates that other common mistakes are having the wrong version of the library, and namespace problems.  According to the faq, prebuilt binaries have namespaces turned on, but if you built Xerces yourself, it's possible you built it without namespaces.

Gary


0

Featured Post

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article shows you how to optimize memory allocations in C++ using placement new. Applicable especially to usecases dealing with creation of large number of objects. A brief on problem: Lets take example problem for simplicity: - I have a G…
Container Orchestration platforms empower organizations to scale their apps at an exceptional rate. This is the reason numerous innovation-driven companies are moving apps to an appropriated datacenter wide platform that empowers them to scale at a …
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
The goal of the video will be to teach the user the difference and consequence of passing data by value vs passing data by reference in C++. An example of passing data by value as well as an example of passing data by reference will be be given. Bot…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question