Game Development Community

Engine Compile error

by Barry Gallagher · in Torque Game Engine Advanced · 03/02/2006 (3:22 am) · 2 replies

I compiled Tse in debug mode fine...
i cant compile in release mode though...
it compiles everything but the exe file...

here are the errors i think cause it

Quote:
5>COMDLG32.LIB(comdlg32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in COMCTL32.LIB(COMCTL32.dll); second definition ignored
5>COMDLG32.LIB(comdlg32.dll) : warning LNK4221: no public symbols found; archive member will be inaccessible
5>USER32.LIB(USER32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in COMCTL32.LIB(COMCTL32.dll); second definition ignored
5>USER32.LIB(USER32.dll) : warning LNK4221: no public symbols found; archive member will be inaccessible
5>ADVAPI32.LIB(ADVAPI32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in COMCTL32.LIB(COMCTL32.dll); second definition ignored
5>ADVAPI32.LIB(ADVAPI32.dll) : warning LNK4221: no public symbols found; archive member will be inaccessible
5>GDI32.LIB(GDI32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in COMCTL32.LIB(COMCTL32.dll); second definition ignored
5>GDI32.LIB(GDI32.dll) : warning LNK4221: no public symbols found; archive member will be inaccessible
5>WINMM.LIB(WINMM.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in COMCTL32.LIB(COMCTL32.dll); second definition ignored
5>WINMM.LIB(WINMM.dll) : warning LNK4221: no public symbols found; archive member will be inaccessible
5>WSOCK32.LIB(WSOCK32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in COMCTL32.LIB(COMCTL32.dll); second definition ignored
5>WSOCK32.LIB(WSOCK32.dll) : warning LNK4221: no public symbols found; archive member will be inaccessible
5>vfw32.lib(AVICAP32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in COMCTL32.LIB(COMCTL32.dll); second definition ignored
5>vfw32.lib(AVICAP32.dll) : warning LNK4221: no public symbols found; archive member will be inaccessible
5>vfw32.lib(AVIFIL32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in COMCTL32.LIB(COMCTL32.dll); second definition ignored
5>vfw32.lib(AVIFIL32.dll) : warning LNK4221: no public symbols found; archive member will be inaccessible
5>vfw32.lib(MSVFW32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in COMCTL32.LIB(COMCTL32.dll); second definition ignored
5>vfw32.lib(MSVFW32.dll) : warning LNK4221: no public symbols found; archive member will be inaccessible
5>gfxCanon.obj : warning LNK4221: no public symbols found; archive member will be inaccessible
5>ddsFile.obj : warning LNK4221: no public symbols found; archive member will be inaccessible
5>Build log was saved at "file://c:\TORQUE\Copy of TSE\lib\out.vc7.win32.release\engine\BuildLog.htm"
5>TSE Lib - 0 error(s), 21 warning(s)

...ctd

#1
03/02/2006 (3:22 am)
Quote:

6>Linking...
6>DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__CoUninitialize@0 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::FreeIDxDiagContainer(void)" (?FreeIDxDiagContainer@DXDiagNVUtil@NVDXDiagWrapper@@QAEJXZ)
6>DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__CoCreateInstance@20 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::InitIDxDiagContainer(void)" (?InitIDxDiagContainer@DXDiagNVUtil@NVDXDiagWrapper@@QAEJXZ)
6>DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__CoInitialize@4 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::InitIDxDiagContainer(void)" (?InitIDxDiagContainer@DXDiagNVUtil@NVDXDiagWrapper@@QAEJXZ)
6>DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__VariantClear@4 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::GetProperty(struct NVDXDiagWrapper::IDxDiagContainer *,wchar_t const *,class std::basic_string,class std::allocator > *)" (?GetProperty@DXDiagNVUtil@NVDXDiagWrapper@@QAEJPAUIDxDiagContainer@2@PB_WPAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z)
6>DXDiagNVUtil.obj : error LNK2019: unresolved external symbol __imp__VariantInit@4 referenced in function "public: long __thiscall NVDXDiagWrapper::DXDiagNVUtil::GetProperty(struct NVDXDiagWrapper::IDxDiagContainer *,wchar_t const *,class std::basic_string,class std::allocator > *)" (?GetProperty@DXDiagNVUtil@NVDXDiagWrapper@@QAEJPAUIDxDiagContainer@2@PB_WPAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z)
6>../example/TSE.exe : fatal error LNK1120: 5 unresolved externals
6>Build log was saved at "file://c:\TORQUE\Copy of TSE\engine\out.vc7.win32.release\BuildLog.htm"
6>TSE - 6 error(s), 1 warning(s)



do i need to add user32.dll etc to additional dependencies? ..or is it something else
#2
03/02/2006 (3:31 am)
Those errors are from an NVIDIA DXDiagNVUtil wrapper class. Dont sure whats using it, but you need the lib I guess.

Microsoft provides the IDXDiagContainer COM interface to query for graphics hardware
and system properties. Seems this NVIDIA class is the wrapper for that interface.

I suggest looking at dxguid.lib

C:\Program Files\NVIDIA Corporation\SDK 9.5\LIBS\src\NV_D3DCommon\DXDiagNVUtil.h