1.11 + MyGUI

Problems building or running the engine, queries about how to use features etc.
Post Reply
libolt
Greenskin
Posts: 126
Joined: Wed Jan 19, 2005 4:48 am
x 9

1.11 + MyGUI

Post by libolt »

Hi,

I decided to try building MyGUI against the latest Ogre 1.11 in hg and got the following error. I'm not sure if the fault lies in Ogre or MyGUI but I can build just fine with the Ogre 1.10.11 branch. Any help is appreciated.

Code: Select all

> mingw32-make
[ 90%] Built target MyGUIEngine
[ 90%] Building CXX object Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/src/MyGUI_OgreDataManager.cpp.obj
In file included from d:/nextcloud/builds/sources/ogre-1.11/OgreMain/include/OgrePlatform.h:31:0,
                 from d:/nextcloud/builds/sources/ogre-1.11/OgreMain/include/OgrePrerequisites.h:30,
                 from d:/nextcloud/builds/sources/ogre-1.11/OgreMain/include/OgreDataStream.h:31,
                 from D:/nextcloud/builds/sources/mygui/Platforms/Ogre/OgrePlatform/include/MyGUI_OgreDataStream.h:13,
                 from D:\nextcloud\builds\sources\mygui\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp:9:
d:/nextcloud/builds/sources/ogre-1.11/OgreMain/include/OgreConfig.h:35:10: fatal error: OgreBuildSettings.h: No such file or directory
 #include "OgreBuildSettings.h"
          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
mingw32-make[2]: *** [Platforms\Ogre\OgrePlatform\CMakeFiles\MyGUI.OgrePlatform.dir\build.make:63: Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/src/MyGUI_OgreDataManager.cpp.obj] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:158: Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/all] Error 2
mingw32-make: *** [Makefile:129: all] Error 2
paroj
OGRE Team Member
OGRE Team Member
Posts: 1994
Joined: Sun Mar 30, 2014 2:51 pm
x 1074
Contact:

Re: 1.11 + MyGUI

Post by paroj »

your include paths are incomplete because you are building against the sources instead of the install target (SDK).
libolt
Greenskin
Posts: 126
Joined: Wed Jan 19, 2005 4:48 am
x 9

Re: 1.11 + MyGUI

Post by libolt »

paroj,

Thanks, that fixed one error. Now I get the following:

Code: Select all

[ 91%] Building CXX object Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/src/MyGUI_OgreRTTexture.cpp.obj                                                   
In file included from D:\nextcloud\builds\sources\mygui\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRTTexture.cpp:9:0:                                                       
D:/nextcloud/builds/sources/mygui/Platforms/Ogre/OgrePlatform/include/MyGUI_OgreRenderManager.h:25:35: error: expected class-name before ',' token                         
   public Ogre::WindowEventListener,          
paroj
OGRE Team Member
OGRE Team Member
Posts: 1994
Joined: Sun Mar 30, 2014 2:51 pm
x 1074
Contact:

Re: 1.11 + MyGUI

Post by paroj »

Ogre::WindowEventListener moved to Bites in 1.11, because it is quite useless.

Either remove it from the inherits or rename it to OgreBites::WindowEventListener.

Maybe I will move it to back to Ogre NS for release to ensure backward compatibility..
libolt
Greenskin
Posts: 126
Joined: Wed Jan 19, 2005 4:48 am
x 9

Re: 1.11 + MyGUI

Post by libolt »

paroj,

Again, thanks, I was able to fix those errors by switching to OgreBites. However, it now fails with the following:

Code: Select all

[ 91%] Building CXX object Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/src/MyGUI_OgreRenderManager.cpp.obj
D:\nextcloud\builds\sources\mygui\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp: In member function 'void MyGUI::OgreRenderManager::setRenderSystem(Ogre::RenderSystem*)':
D:\nextcloud\builds\sources\mygui\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp:115:24: error: 'class Ogre::RenderSystem' has no member named 'getFixedPipelineEnabled'; did you mean 'setLightingEnabled'?
    if (!mRenderSystem->getFixedPipelineEnabled())
                        ^~~~~~~~~~~~~~~~~~~~~~~
                        setLightingEnabled
D:\nextcloud\builds\sources\mygui\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp: In member function 'virtual void MyGUI::OgreRenderManager::begin()':
D:\nextcloud\builds\sources\mygui\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp:344:22: error: 'class Ogre::RenderSystem' has no member named 'getFixedPipelineEnabled'; did you mean 'setLightingEnabled'?
   if (mRenderSystem->getFixedPipelineEnabled())
                      ^~~~~~~~~~~~~~~~~~~~~~~
                      setLightingEnabled
mingw32-make[2]: *** [Platforms\Ogre\OgrePlatform\CMakeFiles\MyGUI.OgrePlatform.dir\build.make:138: Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/src/MyGUI_OgreRenderManager.cpp.obj] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:158: Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/all] Error 2
mingw32-make: *** [Makefile:129: all] Error 2
I couldn't find a reference to getFixedPipelineEnabled in the 1.11 headers but in 1.10.11 I found the following:

Code: Select all

OgreRenderSystem.h:        OGRE_DEPRECATED bool getFixedPipelineEnabled(void) const;
Is there a possible workaround for this? I'm not super familiar with the internals of the MyGUI codebase. But unless there is another GUI that works well with 1.1x on Android as well as windows and linux I would prefer to keep MyGUI working.

Thanks again for all of your help.
paroj
OGRE Team Member
OGRE Team Member
Posts: 1994
Joined: Sun Mar 30, 2014 2:51 pm
x 1074
Contact:

Re: 1.11 + MyGUI

Post by paroj »

I hear ImGUI is the cool kid in town:
viewtopic.php?t=89081

however I updated 1.11 and created a pull-request for mygui:
https://github.com/MyGUI/mygui/pull/145 ... c5f7ce6740

so those should work again now as well.
libolt
Greenskin
Posts: 126
Joined: Wed Jan 19, 2005 4:48 am
x 9

Re: 1.11 + MyGUI

Post by libolt »

I will take a look at imgui when I get some time. In the meantime thanks for the work on getting mygui patched for 1.11. I will try it soon. Then hopefully I can get everything to build for android.
Post Reply