std linker errors
-
Hello, I have downloaded this LLMozLib (it allows easy embedding of the Mozilla Gecko HTML layout engine) but when I tried to compile one of the test apps I got these linker errors:
llmozlib.lib(llmozlib.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_String_base::_Xran(void)const " (?_Xran@_String_base@std@@QBEXXZ) llmozlib.lib(llembeddedbrowser.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_String_base::_Xran(void)const " (?_Xran@_String_base@std@@QBEXXZ) llmozlib.lib(llembeddedbrowserwindow.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_String_base::_Xran(void)const " (?_Xran@_String_base@std@@QBEXXZ) llmozlib.lib(llmozlib.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_String_base::_Xlen(void)const " (?_Xlen@_String_base@std@@QBEXXZ) llmozlib.lib(llembeddedbrowser.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_String_base::_Xlen(void)const " (?_Xlen@_String_base@std@@QBEXXZ) llmozlib.lib(llembeddedbrowserwindow.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_String_base::_Xlen(void)const " (?_Xlen@_String_base@std@@QBEXXZ) llmozlib.lib(llmozlib.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::ios_base::_Addstd(void)" (?_Addstd@ios_base@std@@QAEXXZ)
The _String_base is defined in the following way:class _CRTIMP2_PURE _String_base
: public _Container_base
{ // ultimate base class for basic_string to hold error reporters
public:
_MRTIMP2_NPURE_NCEEPURE static void __CLRCALL_PURE_OR_CDECL _Xlen(); // report a length_error
****Now I found this thread that shows the identical problem and it is suggested that the calling conventions of the definition and the lib don't match, but the solution (to change __CLRCALL_PURE_OR_CDECL to __cdecl) doesn't work. I have tried everything to resolve them, but it's no good (god, how I hate linker errors). I hope one of you guys can shed some light on this. Thank you. #edit-> Oh, and I'm using vs8.