Mysterious Link time error with xerces parser
I've included .\xerces-c-3.1.1-x86_64-windows-vc-10.0\include in the include path
and .\xerces-c-3.1.1-x86_64-windows-vc-10.0\lib in the library path
where the root is the .vcproj files
I have included the library xerces-c_static_3D.lib
I am using double-byte encoding
I have included the precompiled header XERCES_STATIC_LIBRARY
I am still receiving:
[translated]
Code:
error 2 error LNK2019: unresolved external symbol "public: __thiscall xercesc_3_1::XercesDOMParser::XercesDOMParser(class xercesc_3_1::XMLValidator * const,class xercesc_3_1::MemoryManager * const,class xercesc_3_1::XMLGrammarPool * const)" (??0XercesDOMParser@xercesc_3_1@@QAE@QAVXMLValidator@1@QAVMemoryManager@1@QAVXMLGrammarPool@1@@Z) at "public: __thiscall GetValue<struct D3DXVECTOR3>::GetValue<struct D3DXVECTOR3>(void)" (??0?$GetValue@UD3DXVECTOR3@@@@QAE@XZ) referenced by D:\Users\JACKY\Documents\Visual Studio 2010\Projects\PerfectSim V5.0\PerfectSim V5.0\CCamera.obj PerfectSim V5.0
Code:
#include <xercesc/dom/DOM.hpp>
#include <xercesc/dom/DOMDocument.hpp>
#include <xercesc/dom/DOMDocumentType.hpp>
#include <xercesc/dom/DOMElement.hpp>
#include <xercesc/dom/DOMImplementation.hpp>
#include <xercesc/dom/DOMImplementationLS.hpp>
#include <xercesc/dom/DOMNodeIterator.hpp>
#include <xercesc/dom/DOMNodeList.hpp>
#include <xercesc/dom/DOMText.hpp>
#include <xercesc/parsers/XercesDOMParser.hpp>
#include <xercesc/util/XMLUni.hpp>
#include <string>
#include <d3dx9.h>
using namespace std;
using namespace xercesc;
template<class T>
class GetValue
{
public:
GetValue() { }
~GetValue() { }
virtual T get(std::string element) = 0;
private:
void Initialize(std::string filename);
protected:
xercesc::XercesDOMParser m_Parser;
xercesc::DOMDocument *doc;
XMLCh* TAG_root;
};
class GetD3DXVECTOR3 : public GetValue<D3DXVECTOR3>
{
public:
GetD3DXVECTOR3() { }
~GetD3DXVECTOR3() { }
public:
D3DXVECTOR3 get(std::string element);
private:
D3DXVECTOR3 m_Vec;
};
class GetD3DXMATRIX : public GetValue<D3DXMATRIX>
{
public:
GetD3DXMATRIX() { }
~GetD3DXMATRIX() { }
public:
D3DXMATRIX get(std::string element);
private:
D3DXMATRIX m_Mat;
};