From Code Synthesis Wiki

Jump to: navigation, search

This page contains additional information on using XSD on AIX with the IBM XL C++ compiler.

If you copy Xerces-C++ or XSD runtime (libxsd) headers to the /usr/include/ directory, you may get errors related to C-linkage when compiling examples or the generated code. They look like this:

More than one function "operator new" has non-C++ linkage
A template cannot have "C" linkage.

These are caused by the XL C++ compiler wrapping includes for certain directories, such as /usr/include, into extern "C" {} blocks. To work around this, you can use the -qnocinc=directory option, for example:

-qnocinc=/usr/include/xsd -qnocinc=/usr/include/xercesc
Personal tools