Haiying Tu wrote:
Dear all,
Need help on Xalanc and Xerecs work for VC++8. Thank Dmitry for leading me to the link of source code: http://svn.apache.org/repos/asf/xalan/c/trunk/ However, even Xerces cannot be build in VC8 now (I successfully built Xerces 2.7 in VC8, however, Xalanc is looking for a library associated with Xerces 3). Got lots of link errors such as: DocumentImpl.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static bool __cdecl xercesc_3_0::XMLChar1_0::isValidName(unsigned short const * const,unsigned int)" ([EMAIL PROTECTED]@xercesc_3_0@@[EMAIL PROTECTED]) referenced in function "public: bool __thiscall xercesc_3_0::DocumentImpl::isXMLName(class xercesc_3_0::DOMString const &)" ([EMAIL PROTECTED]@xercesc_3_0@@[EMAIL PROTECTED]@@Z) DOM_DOMImplementation.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static bool __cdecl xercesc_3_0::XMLChar1_0::isValidName(unsigned short const * const,unsigned int)" ([EMAIL PROTECTED]@xercesc_3_0@@[EMAIL PROTECTED]) DOM_DOMImplementation.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static int __cdecl xercesc_3_0::XMLString::compareIString(unsigned short const * const,unsigned short const * const)" ([EMAIL PROTECTED]@xercesc_3_0@@[EMAIL PROTECTED]) referenced in function "public: bool __thiscall xercesc_3_0::DOM_DOMImplementation::hasFeature(class xercesc_3_0::DOMString const &,class xercesc_3_0::DOMString const &)" ([EMAIL PROTECTED]@xercesc_3_0@@[EMAIL PROTECTED]@[EMAIL PROTECTED]) DOM_DOMImplementation.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static unsigned int __cdecl xercesc_3_0::XMLString::stringLen(unsigned short const * const)" ([EMAIL PROTECTED]@xercesc_3_0@@[EMAIL PROTECTED]) referenced in function "public: class xercesc_3_0::DOM_DocumentType __thiscall xercesc_3_0::DOM_DOMImplementation::createDocumentType(class xercesc_3_0::DOMString const &,class xercesc_3_0::DOMString const &,class xercesc_3_0::DOMString const &)" ([EMAIL PROTECTED]@xercesc_3_0@@[EMAIL PROTECTED]@[EMAIL PROTECTED]@[EMAIL PROTECTED]) Any hint?

The latest Xalan-C sources should build fine with the latest sources of Xerces-C. If you're going to build the latest Xalan-C with VC8 using Xerces 2.7, you'll need to do two things:

1. Change the Xerces-C link library Xalan-C is using. Look for xerces-c_3D.lib and xerces-c_3.lib and change them to xerces-c_2D.lib and xerces-c_2.lib.

2. Ensure that wchar_t is treated consistently. You can either treat wchar_t as a proper type, or treat is as a typedef. Older versions of VC++ treated it as a typedef, but the standard requires it be a proper type. You will need to set the option consistently in both the Xerces-C and Xalan-C projects. Xalan-C defaults to treating wchar_t as a proper type in VC8.

Dave

Reply via email to