Page 1 of 1

Building CEGUI 0.7.7 with OGRE 1.8.1 on VS2010

Posted: Tue Oct 09, 2012 01:39
by slavik262
I've built CEGUI multiple times now without incident, but when I tried to build it against OGRE 1.8.1, I was met with a cascade of warnings:

Code: Select all

C4251: 'Ogre::StringUtil::BLANK' : class 'std::basic_string<_Elem,_Traits,_Ax>' needs to have dll-interface to be used by clients of class 'Ogre::StringUtil'   d:\src\libs\ogre-1.8.1\include\ogre\OgreString.h   195
C4251: 'Ogre::Exception::typeName' : class 'std::basic_string<_Elem,_Traits,_Ax>' needs to have dll-interface to be used by clients of class 'Ogre::Exception'   d:\src\libs\ogre-1.8.1\include\ogre\OgreException.h   97
warning C4251: 'Ogre::Exception::description' : class 'std::basic_string<_Elem,_Traits,_Ax>' needs to have dll-interface to be used by clients of class 'Ogre::Exception'   d:\src\libs\ogre-1.8.1\include\ogre\OgreException.h   98


This continues on - I get over 1600 of these warnings. I searched this forum for similar issues, but none of the solutions seem applicable here. Does anyone have any idea what could cause this?

Re: Building CEGUI 0.7.7 with OGRE 1.8.1 on VS2010

Posted: Tue Oct 09, 2012 13:39
by Kulik
These warnings are harmless and (frankly) idiotic. Ogre previously had it done properly with push/pop warning suppression pairs in their header files. They now deal with it on the cmake level. You get no warnings when building Ogre but tons of warnings when using its headers.

I suggest suppressing this warning yourself for your project.