Enviado por pussin el día 17 de noviembre de 2005
Hola,
Estoy realizando una aplicación en Builder 6 y necesito las librerías de Xerces para crear un documento XML a partir de unas estructuras de datos.
El caso es que descargué los binarios para Windows 2000 (aunque yo uso WinXP no se si tendrá que ver) y después de añadir en la variable de entorno path <directorio xerces>\bin como pone en la doc, lo que hago es en PROJECT-OPTIONS en include path y en lib path añadir los correspondientes directorios.
Pues después de hacer esto, no obtengo error en los includes pero si obtengo los siguientes errores:
[C++ Warning] XercesVersion.hpp(198): W8058 Cannot create pre-compiled header: initialized data in header
[Linker Error] Unresolved external 'xercesc_2_7::XMemory::operator delete(void *)' referenced from E:\DOCUMENTS AND SETTINGS\JAVI\MIS DOCUMENTOS\PROYECTO\TRADUCTOR\MAIN.OBJ
[Linker Error] Unresolved external 'xercesc_2_7::XMLException::~XMLException()' referenced from E:\DOCUMENTS AND SETTINGS\JAVI\MIS DOCUMENTOS\PROYECTO\TRADUCTOR\MAIN.OBJ
[Linker Error] Unresolved external 'xercesc_2_7::XMLUni::fgXercescDefaultLocale' referenced from E:\DOCUMENTS AND SETTINGS\JAVI\MIS DOCUMENTOS\PROYECTO\TRADUCTOR\MAIN.OBJ
[Linker Error] Unresolved external 'xercesc_2_7::XMLPlatformUtils::Initialize(const char * const, const char * const, xercesc_2_7::PanicHandler * const, xercesc_2_7::MemoryManager * const, bool)' referenced from E:\DOCUMENTS AND SETTINGS\JAVI\MIS DOCUMENTOS\PROYECTO\TRADUCTOR\MAIN.OBJ
[Linker Error] Unresolved external 'xercesc_2_7::XMLString::transcode(const wchar_t * const)' referenced from E:\DOCUMENTS AND SETTINGS\JAVI\MIS DOCUMENTOS\PROYECTO\TRADUCTOR\MAIN.OBJ
[Linker Error] Unresolved external 'xercesc_2_7::XMLString::release(char * *)' referenced from E:\DOCUMENTS AND SETTINGS\JAVI\MIS DOCUMENTOS\PROYECTO\TRADUCTOR\MAIN.OBJ
[Linker Error] Unresolved external 'xercesc_2_7::XMLPlatformUtils::Terminate()' referenced from E:\DOCUMENTS AND SETTINGS\JAVI\MIS DOCUMENTOS\PROYECTO\TRADUCTOR\MAIN.OBJ
He de decir que el unico codigo de Xerces que he añadido de momento es el siguiente:
try
{
XMLPlatformUtils::Initialize();
}
catch(const XMLException& toCatch)
{
char *pMsg = XMLString::transcode(toCatch.getMessage());
XERCES_STD_QUALIFIER cerr << "Error during Xerces-c Initialization.\n"
<< " Exception message:"
<< pMsg;
XMLString::release(&pMsg);
return 1;
}
y
XMLPlatformUtils::Terminate();
Estoy totalmente bloqueado, alguien me puede decir que es lo que está fallando? Tengo que añadir alguna cosa mas?
Muchas gracias.
Enviado por ayuda el día 10 de junio de 2008
Si observas los log te daras cuenta que es problema de linker, reviza si no te falta librerias por incluir
*.lib...
saludos