MS Visual C++ Toolkit 2003 & Code::Blocks

Problems building or running the engine, queries about how to use features etc.
Post Reply
SilentRage
Gnoblar
Posts: 5
Joined: Mon Feb 13, 2006 7:18 am

MS Visual C++ Toolkit 2003 & Code::Blocks

Post by SilentRage »

Having gone through a maze of documentation and forum posts, I'm growing weary of following the avenue of compiling Ogre3D from source using Code::Blocks and the MS Visual C++ Toolkit 2003. I've followed all the documentation I could find, and am now stuck trying to get the dependencies to link, and I suspect the issue has something to do with my build settings relating to multithreaded linking.

Before I venture any further down this avenue, I'd like to know if anyone has been able to to get a working build following the available documentation and posts relating to the subject in the forums. I've seen quite a few references that suggest it can't be done, but I'm not sure how current or accurate that is. For the time being I am going to switch over to trying to compile with GCC.

Thank you

Corey
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179
Contact:

Post by jacmoe »

IMO: switch to GCC (MinGW) and be a lot happier.
The VC toolkit seemed like a good idea at the time, but it just ends up being a almost-there solution.
Hopefully precompiled MinGW dependencies will arrive soon. :wink:
User avatar
xavier
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 9481
Joined: Fri Feb 18, 2005 2:03 am
Location: Dublin, CA, US
x 22

Post by xavier »

Correct, nfz started using it because he had to, and says he'll continue using C::B/MinGW by choice. Apparently it's going to be up to the GCC 4.0 level soon (if not already) so that's good to know.
SilentRage
Gnoblar
Posts: 5
Joined: Mon Feb 13, 2006 7:18 am

Post by SilentRage »

I'm currently trying to build just the OgreMain.dll. I've unzipped two dependency packages into my ogrenew directory. One dependency package is for Code::Blocks, the other is "Dependencies 1.0.6 For Visual C++ .Net 2003 (7.1)". They both share header files and libraries, I've tried compiling by overwriting files with the same name from one package, and then the other. I just noticed that the Visual C++ .Net dependency package is for 1.0.6. Will that matter?

I've included the full path to my "Dependencies/lib/Release" directory in my linker path, but that doesn't seem to be making a difference.

I've already compiled the source but I'm not sure if I should be compiling with the Runtime Compiler Flag "Multi-Threaded Run Time Library" or "Multi-Threaded DLL Run Time Library". Or should they be set at all?

Below are the errors I receive when trying to link:

Code: Select all

Project   : OgreMain
Compiler  : Microsoft Visual C++ Toolkit 2003 (called directly)
Directory : C:\SDKs\ogrenew\OgreMain\scripts\
--------------------------------------------------------------------------------
Switching to target: OgreMain - Win32 Release
Linking dynamic library: C:\SDKs\ogrenew\OgreMain\lib\Release\OgreMain.dll
   Creating library C:\SDKs\ogrenew\OgreMain\lib\Release\OgreMain.lib and object C:\SDKs\ogrenew\OgreMain\lib\Release\OgreMain.exp
OgreFont.obj : error LNK2019: unresolved external symbol _FT_Done_FreeType referenced in function "public: virtual void __thiscall Ogre::Font::loadResource(class Ogre::Resource *)" (?loadResource@Font@Ogre@@UAEXPAVResource@2@@Z)
OgreFont.obj : error LNK2019: unresolved external symbol _FT_Load_Char referenced in function "public: virtual void __thiscall Ogre::Font::loadResource(class Ogre::Resource *)" (?loadResource@Font@Ogre@@UAEXPAVResource@2@@Z)
OgreFont.obj : error LNK2019: unresolved external symbol _FT_Set_Char_Size referenced in function "public: virtual void __thiscall Ogre::Font::loadResource(class Ogre::Resource *)" (?loadResource@Font@Ogre@@UAEXPAVResource@2@@Z)
OgreFont.obj : error LNK2019: unresolved external symbol _FT_New_Memory_Face referenced in function "public: virtual void __thiscall Ogre::Font::loadResource(class Ogre::Resource *)" (?loadResource@Font@Ogre@@UAEXPAVResource@2@@Z)
OgreFont.obj : error LNK2019: unresolved external symbol _FT_Init_FreeType referenced in function "public: virtual void __thiscall Ogre::Font::loadResource(class Ogre::Resource *)" (?loadResource@Font@Ogre@@UAEXPAVResource@2@@Z)
OgreILCodecs.obj : error LNK2019: unresolved external symbol __imp__ilGetError@0 referenced in function "public: static void __cdecl Ogre::ILCodecs::registerCodecs(void)" (?registerCodecs@ILCodecs@Ogre@@SAXXZ)
OgreILImageCodec.obj : error LNK2001: unresolved external symbol __imp__ilGetError@0
OgreImage.obj : error LNK2001: unresolved external symbol __imp__ilGetError@0
OgreILCodecs.obj : error LNK2019: unresolved external symbol __imp__ilGetString@4 referenced in function "public: static void __cdecl Ogre::ILCodecs::registerCodecs(void)" (?registerCodecs@ILCodecs@Ogre@@SAXXZ)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilEnable@4 referenced in function "public: void __thiscall Ogre::ILImageCodec::initialiseIL(void)" (?initialiseIL@ILImageCodec@Ogre@@QAEXXZ)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilInit@0 referenced in function "public: void __thiscall Ogre::ILImageCodec::initialiseIL(void)" (?initialiseIL@ILImageCodec@Ogre@@QAEXXZ)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__iluErrorString@4 referenced in function "public: virtual void __thiscall Ogre::ILImageCodec::codeToFile(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?codeToFile@ILImageCodec@Ogre@@UBEXAAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z)
OgreImage.obj : error LNK2001: unresolved external symbol __imp__iluErrorString@4
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilDeleteImages@8 referenced in function "public: virtual void __thiscall Ogre::ILImageCodec::codeToFile(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?codeToFile@ILImageCodec@Ogre@@UBEXAAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z)
OgreImage.obj : error LNK2001: unresolved external symbol __imp__ilDeleteImages@8
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilSaveImage@4 referenced in function "public: virtual void __thiscall Ogre::ILImageCodec::codeToFile(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?codeToFile@ILImageCodec@Ogre@@UBEXAAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__iluFlipImage@0 referenced in function "public: virtual void __thiscall Ogre::ILImageCodec::codeToFile(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?codeToFile@ILImageCodec@Ogre@@UBEXAAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilBindImage@4 referenced in function "public: virtual void __thiscall Ogre::ILImageCodec::codeToFile(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?codeToFile@ILImageCodec@Ogre@@UBEXAAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z)
OgreImage.obj : error LNK2001: unresolved external symbol __imp__ilBindImage@4
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilGenImages@8 referenced in function "public: virtual void __thiscall Ogre::ILImageCodec::codeToFile(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?codeToFile@ILImageCodec@Ogre@@UBEXAAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z)
OgreImage.obj : error LNK2001: unresolved external symbol __imp__ilGenImages@8
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilDisable@4 referenced in function "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::ILImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@ILImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilGetDXTCData@12 referenced in function "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::ILImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@ILImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilActiveImage@4 referenced in function "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::ILImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@ILImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilActiveMipmap@4 referenced in function "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::ILImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@ILImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilConvertImage@8 referenced in function "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::ILImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@ILImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilGetInteger@4 referenced in function "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::ILImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@ILImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z)
OgreILUtil.obj : error LNK2001: unresolved external symbol __imp__ilGetInteger@4
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilLoadL@12 referenced in function "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::ILImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@ILImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z)
OgreILImageCodec.obj : error LNK2019: unresolved external symbol __imp__ilSetInteger@8 referenced in function "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::ILImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@ILImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z)
OgreILUtil.obj : error LNK2019: unresolved external symbol __imp__ilGetData@0 referenced in function "void __cdecl Ogre::ilToOgreInternal<unsigned char>(unsigned char *,enum Ogre::PixelFormat,unsigned char,unsigned char,unsigned char,unsigned char)" (??$ilToOgreInternal@E@Ogre@@YAXPAEW4PixelFormat@0@EEEE@Z)
OgreILUtil.obj : error LNK2019: unresolved external symbol __imp__ilTexImage@28 referenced in function "public: static void __cdecl Ogre::ILUtil::fromOgre(class Ogre::PixelBox const &)" (?fromOgre@ILUtil@Ogre@@SAXABVPixelBox@2@@Z)
OgreImage.obj : error LNK2019: unresolved external symbol __imp__iluScale@12 referenced in function "public: static void __cdecl Ogre::Image::scale(class Ogre::PixelBox const &,class Ogre::PixelBox const &,enum Ogre::Image::Filter)" (?scale@Image@Ogre@@SAXABVPixelBox@2@0W4Filter@12@@Z)
OgreImage.obj : error LNK2019: unresolved external symbol __imp__iluImageParameter@8 referenced in function "public: static void __cdecl Ogre::Image::scale(class Ogre::PixelBox const &,class Ogre::PixelBox const &,enum Ogre::Image::Filter)" (?scale@Image@Ogre@@SAXABVPixelBox@2@0W4Filter@12@@Z)
OgreRoot.obj : error LNK2019: unresolved external symbol __imp__DispatchMessageA@4 referenced in function "public: void __thiscall Ogre::Root::startRendering(void)" (?startRendering@Root@Ogre@@QAEXXZ)
OgreRoot.obj : error LNK2019: unresolved external symbol __imp__TranslateMessage@4 referenced in function "public: void __thiscall Ogre::Root::startRendering(void)" (?startRendering@Root@Ogre@@QAEXXZ)
OgreRoot.obj : error LNK2019: unresolved external symbol __imp__PeekMessageA@20 referenced in function "public: void __thiscall Ogre::Root::startRendering(void)" (?startRendering@Root@Ogre@@QAEXXZ)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_file_read referenced in function "public: virtual unsigned int __thiscall Ogre::ZipDataStream::read(void *,unsigned int)" (?read@ZipDataStream@Ogre@@UAEIPAXI@Z)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_seek referenced in function "public: virtual void __thiscall Ogre::ZipDataStream::skip(long)" (?skip@ZipDataStream@Ogre@@UAEXJ@Z)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_tell referenced in function "public: virtual unsigned int __thiscall Ogre::ZipDataStream::tell(void)const " (?tell@ZipDataStream@Ogre@@UBEIXZ)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_file_close referenced in function "public: virtual void __thiscall Ogre::ZipDataStream::close(void)" (?close@ZipDataStream@Ogre@@UAEXXZ)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_dir_stat referenced in function "public: virtual bool __thiscall Ogre::ZipArchive::exists(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?exists@ZipArchive@Ogre@@UAE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_error referenced in function "public: virtual class Ogre::SharedPtr<class Ogre::DataStream> __thiscall Ogre::ZipArchive::open(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)const " (?open@ZipArchive@Ogre@@UBE?AV?$SharedPtr@VDataStream@Ogre@@@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_file_open referenced in function "public: virtual class Ogre::SharedPtr<class Ogre::DataStream> __thiscall Ogre::ZipArchive::open(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)const " (?open@ZipArchive@Ogre@@UBE?AV?$SharedPtr@VDataStream@Ogre@@@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_dir_close referenced in function "public: virtual void __thiscall Ogre::ZipArchive::unload(void)" (?unload@ZipArchive@Ogre@@UAEXXZ)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_dir_read referenced in function "public: virtual void __thiscall Ogre::ZipArchive::load(void)" (?load@ZipArchive@Ogre@@UAEXXZ)
OgreZip.obj : error LNK2019: unresolved external symbol _zzip_dir_open referenced in function "public: virtual void __thiscall Ogre::ZipArchive::load(void)" (?load@ZipArchive@Ogre@@UAEXXZ)
C:\SDKs\ogrenew\OgreMain\lib\Release\OgreMain.dll : fatal error LNK1120: 40 unresolved externals
Process terminated with status 1 (0 minutes, 41 seconds)
48 errors, 0 warnings
I may still abandon trying to use the toolkit and just use GCC (MinGW), but I think I'm not understanding some important stuff, so any insight into what's going wrong here would be a big help.
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179
Contact:

Post by jacmoe »

That is because you didn't get the dependencies. (Freetype, zziplib, ...).
User avatar
xavier
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 9481
Joined: Fri Feb 18, 2005 2:03 am
Location: Dublin, CA, US
x 22

Post by xavier »

He got them, but it does not appear that he added the .libs to the project so that they would link?

You want to delete the entire Dependencies/ directory in Ogrenew and just unzip the VC++ 7.1 deps, btw -- don't mix MinGW and VC++.
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179
Contact:

Post by jacmoe »

SilentRage
Gnoblar
Posts: 5
Joined: Mon Feb 13, 2006 7:18 am

Post by SilentRage »

I've deleted my dependencies directory and unzipped just the visual studio toolkit dependency file. I then manually added all the libraries in the lib/Release directory. The output is the same as before. I've tried this before and I just don't understand why this doesn't work. I searched inside the binary data of the libraries and the text names of the unresolved symbols are definately in there. It acts as if they aren't included in the project at all. At the very least, I'd expect to get some other error or for it to work, but not the same one.
User avatar
xavier
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 9481
Joined: Fri Feb 18, 2005 2:03 am
Location: Dublin, CA, US
x 22

Post by xavier »

You probably want Multithreaded DLL or Multithreaded DLL. You also are not linking things like IL.lib or ILu.lib.
User avatar
xavier
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 9481
Joined: Fri Feb 18, 2005 2:03 am
Location: Dublin, CA, US
x 22

Post by xavier »

I take that back, sorry, gett crossed on different threads here.

You don't have a Multithreaded (Debug) DLL with VC++ Toolkit. You have to use Single-threaded or static multithreaded.

The rest still applies: you are not linking the various libs needed by OgreMain.
SilentRage
Gnoblar
Posts: 5
Joined: Mon Feb 13, 2006 7:18 am

Post by SilentRage »

Got the dependencies right (I was just adding them as files to the project
instead of adding them to the link libraries on the linker tab of the project
build options dialog).


Now I have new errors, and from what I'm reading, even if I get these
resolved, and no further link errors occur, it still looks doubtful that I will
end up with a proper build.


Time to dive into MinGW:


New errors:

Code: Select all

Project   : OgreMain
Compiler  : Microsoft Visual C++ Toolkit 2003 (called directly)
Directory : C:\SDKs\ogrenew\OgreMain\scripts\
--------------------------------------------------------------------------------
Switching to target: OgreMain - Win32 Release
Linking dynamic library: C:\SDKs\ogrenew\OgreMain\lib\Release\OgreMain.dll
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _strncpy already defined in LIBCMT.lib(strncpy.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _sprintf already defined in LIBCMT.lib(sprintf.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _memmove already defined in LIBCMT.lib(memmove.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _strncmp already defined in LIBCMT.lib(strncmp.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _isdigit already defined in LIBCMT.lib(_ctype.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _atol already defined in LIBCMT.lib(atox.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _isxdigit already defined in LIBCMT.lib(_ctype.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _isalnum already defined in LIBCMT.lib(_ctype.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _malloc already defined in LIBCMT.lib(malloc.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _realloc already defined in LIBCMT.lib(realloc.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _free already defined in LIBCMT.lib(free.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _fclose already defined in LIBCMT.lib(fclose.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _fread already defined in LIBCMT.lib(fread.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _fseek already defined in LIBCMT.lib(fseek.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _ftell already defined in LIBCMT.lib(ftell.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _fopen already defined in LIBCMT.lib(fopen.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: __errno already defined in LIBCMT.lib(dosmap.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _calloc already defined in LIBCMT.lib(calloc.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: __stricmp already defined in LIBCMT.lib(stricmp.obj)
MSVCRT.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMT.lib(typinfo.obj)
MSVCRT.lib(ti_inst.obj) : error LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) already defined in LIBCMT.lib(typinfo.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: __strdup already defined in LIBCMT.lib(strdup.obj)
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _strncpy already defined in LIBCMT.lib(strncpy.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _sprintf already defined in LIBCMT.lib(sprintf.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _memmove already defined in LIBCMT.lib(memmove.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _strncmp already defined in LIBCMT.lib(strncmp.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _isdigit already defined in LIBCMT.lib(_ctype.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _atol already defined in LIBCMT.lib(atox.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _isxdigit already defined in LIBCMT.lib(_ctype.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _isalnum already defined in LIBCMT.lib(_ctype.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _malloc already defined in LIBCMT.lib(malloc.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _realloc already defined in LIBCMT.lib(realloc.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _free already defined in LIBCMT.lib(free.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _fclose already defined in LIBCMT.lib(fclose.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _fread already defined in LIBCMT.lib(fread.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _fseek already defined in LIBCMT.lib(fseek.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _ftell already defined in LIBCMT.lib(ftell.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _fopen already defined in LIBCMT.lib(fopen.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: __errno already defined in LIBCMT.lib(dosmap.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: _calloc already defined in LIBCMT.lib(calloc.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: __stricmp already defined in LIBCMT.lib(stricmp.obj); second definition ignored
MSVCRT.lib(ti_inst.obj) : warning LNK4006: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMT.lib(typinfo.obj); second definition ignored
MSVCRT.lib(ti_inst.obj) : warning LNK4006: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) already defined in LIBCMT.lib(typinfo.obj); second definition ignored
MSVCRT.lib(MSVCR71.dll) : warning LNK4006: __strdup already defined in LIBCMT.lib(strdup.obj); second definition ignored
   Creating library C:\SDKs\ogrenew\OgreMain\lib\Release\OgreMain.lib and object C:\SDKs\ogrenew\OgreMain\lib\Release\OgreMain.exp
LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
OgreRoot.obj : error LNK2019: unresolved external symbol __imp__DispatchMessageA@4 referenced in function "public: void __thiscall Ogre::Root::startRendering(void)" (?startRendering@Root@Ogre@@QAEXXZ)
OgreRoot.obj : error LNK2019: unresolved external symbol __imp__TranslateMessage@4 referenced in function "public: void __thiscall Ogre::Root::startRendering(void)" (?startRendering@Root@Ogre@@QAEXXZ)
OgreRoot.obj : error LNK2019: unresolved external symbol __imp__PeekMessageA@20 referenced in function "public: void __thiscall Ogre::Root::startRendering(void)" (?startRendering@Root@Ogre@@QAEXXZ)
C:\SDKs\ogrenew\OgreMain\lib\Release\OgreMain.dll : fatal error LNK1120: 3 unresolved externals
Process terminated with status 1 (0 minutes, 25 seconds)
26 errors, 23 warnings
User avatar
xavier
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 9481
Joined: Fri Feb 18, 2005 2:03 am
Location: Dublin, CA, US
x 22

Post by xavier »

libc (standard C language library) and also looks like either kernel32.lib or user32.lib.

[Edit: nm, misread -- you are mixing runtime types there -- LIBCMT or MSVCR71D, not both)]
Post Reply