And yet more compiler errors....
by Robert Rice · in Torque Game Engine Advanced · 02/27/2005 (6:41 pm) · 6 replies
Using Visual Studio 2005 Express, I am getting this on a build. Anyone got any clues as to why and how to fix it?
LINK : warning LNK4098: defaultlib 'LIBCMTD' conflicts with use of other libs; use /NODEFAULTLIB:library
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__VariantClear@4 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::GetProperty(struct NVDXDiagWrapper::IDxDiagContainer *,unsigned short const *,class std::basic_string,class std::allocator > *)" (?GetProperty@DXDiagNVUtil@NVDXDiagWrapper@@QAEJPAUIDxDiagContainer@2@PBGPAV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@@Z)
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__VariantInit@4 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::GetProperty(struct NVDXDiagWrapper::IDxDiagContainer *,unsigned short const *,class std::basic_string,class std::allocator > *)" (?GetProperty@DXDiagNVUtil@NVDXDiagWrapper@@QAEJPAUIDxDiagContainer@2@PBGPAV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@@Z)
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__CoCreateInstance@20 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::InitIDxDiagContainer(void)" (?InitIDxDiagContainer@DXDiagNVUtil@NVDXDiagWrapper@@QAEJXZ)
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__CoInitialize@4 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::InitIDxDiagContainer(void)" (?InitIDxDiagContainer@DXDiagNVUtil@NVDXDiagWrapper@@QAEJXZ)
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__CoUninitialize@0 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::FreeIDxDiagContainer(void)" (?FreeIDxDiagContainer@DXDiagNVUtil@NVDXDiagWrapper@@QAEJXZ)
../example/TSE_DEBUG.exe : fatal error LNK1120: 5 unresolved externals
LINK : warning LNK4098: defaultlib 'LIBCMTD' conflicts with use of other libs; use /NODEFAULTLIB:library
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__VariantClear@4 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::GetProperty(struct NVDXDiagWrapper::IDxDiagContainer *,unsigned short const *,class std::basic_string
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__VariantInit@4 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::GetProperty(struct NVDXDiagWrapper::IDxDiagContainer *,unsigned short const *,class std::basic_string
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__CoCreateInstance@20 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::InitIDxDiagContainer(void)" (?InitIDxDiagContainer@DXDiagNVUtil@NVDXDiagWrapper@@QAEJXZ)
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__CoInitialize@4 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::InitIDxDiagContainer(void)" (?InitIDxDiagContainer@DXDiagNVUtil@NVDXDiagWrapper@@QAEJXZ)
DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__CoUninitialize@0 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::FreeIDxDiagContainer(void)" (?FreeIDxDiagContainer@DXDiagNVUtil@NVDXDiagWrapper@@QAEJXZ)
../example/TSE_DEBUG.exe : fatal error LNK1120: 5 unresolved externals
#2
02/27/2005 (10:41 pm)
Once again, Russ, you are my savior. That seems to have worked...thanks a lot!
#3
02/27/2005 (10:47 pm)
Hmm... Why would you need the OLE libraries? That doesn't make any sense as those are for Object Linking and Embedding
#4
Yeah, I don't know why those are needed for the compile, but it works when you add them in! A mystery that would be nice to have a solution to eventually, so areal fix can be made instead of this workaround...but in the meantime, it gets the job done.
02/28/2005 (5:22 am)
Harold,Yeah, I don't know why those are needed for the compile, but it works when you add them in! A mystery that would be nice to have a solution to eventually, so areal fix can be made instead of this workaround...but in the meantime, it gets the job done.
#5
The import libraries need to be used to resolve the references to the COM API being used.
03/01/2005 (1:22 pm)
Guess what dll's implement the COM stuff being referenced here (i.e. CoCreateInstance etc), the OLE ones :)The import libraries need to be used to resolve the references to the COM API being used.
#6
03/03/2006 (12:40 am)
How do I add the ole32.lib and oleaut32.lib?
Torque Owner Russ Lunsford