MyGUI and MinGW

Pivot

26-05-2009 16:10:08

I trying to compile MyGUI with MinGW but there are a lot of errors in log:



-------------- Build: Windows_Release in MyGUIEngine ---------------

Precompiling header: include\MyGUI_Precompiled.h
In file included from D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_IResource.h:27,
from D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Precompiled.h:32:
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h:290: error: expected unqualified-id before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h:290: error: expected ')' before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h:290: error: expected ';' before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h:295: error: expected ';' before 'bool'
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h:295: error: expected unqualified-id before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h:295: error: expected ')' before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h:295: error: expected ';' before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h:300: error: expected ';' before 'void'
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h: In member function 'void MyGUI::xml::Document::setLastFileError(const std::wstring&)':
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_XmlDocument.h:315: error: 'UTFString' is not a member of 'Ogre'
In file included from D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Widget.h:30,
from D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_CastWidget.h:26,
from D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Precompiled.h:45:
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_ISubWidgetText.h: At global scope:
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_ISubWidgetText.h:92: error: expected unqualified-id before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_ISubWidgetText.h:92: error: expected ')' before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_ISubWidgetText.h:92: error: expected ';' before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_ISubWidgetText.h:93: error: expected ';' before 'virtual'
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_ISubWidgetText.h:93: error: ISO C++ forbids declaration of 'UTFString' with no type
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_ISubWidgetText.h:93: error: invalid use of '::'
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_ISubWidgetText.h:93: error: expected ';' before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_ISubWidgetText.h:95: error: expected ';' before 'virtual'
In file included from D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_CastWidget.h:26,
from D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Precompiled.h:45:
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Widget.h:158: error: expected unqualified-id before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Widget.h:158: error: expected ')' before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Widget.h:158: error: expected ';' before '&' token
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Widget.h:160: error: ISO C++ forbids declaration of 'UTFString' with no type
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Widget.h:160: error: invalid use of '::'
D:\Maciek\Prace\Programowanie\C++\depend\MyGUI2.2.2_source\MyGUIEngine\include\MyGUI_Widget.h:160: error: expected ';' before '&' token
Process terminated with status 1 (0 minutes, 7 seconds)
23 errors, 0 warnings



Im using Code::Blocks 8.02 and MinGW 3.15.2 GCC 4.4

Altren

27-05-2009 19:41:53

You haven't set up Ogre with MinGW properly. You should read about using Ogre with MinGW, there's some hack for Ogre UTF Strings.

AndiNo

23-07-2009 18:24:04

I've been looking at MyGUI a long time now but never got it to work. Now I have tried CMake and generated a CodeBlocks project for MyGUI. When trying to compile it I get this error:
C:\DOKUME~2\ANDREA~1\Desktop\MYGUI_~1\trunk\MYGUIE~1\include\MyGUI_UString.h|2756|error: expected initializer before '&' token|
in this part:
//! std::wostream write operator \relates UString
inline std::wostream& operator << ( std::wostream& os, const UString& s )
{
return os << s.asWStr();
}

I'm using MinGW with CodeBlocks (of course) 8.02 and Ogre 1.6.1.
I see it has something to do with strings, so I tried it with "normal" MinGW and MinGW Toolbox, but get the same error. Does anyone know what I need to change? I finally want to use MyGUI :-P (I'd really like if you had binaries on your site^^)

Altren

23-07-2009 19:33:40

Hm, I don't know what cause error - you can comment this function out while I'm thinking :) it's not used anywhere.

AndiNo

23-07-2009 22:06:47

Of course I forgot something >_< I'm using the code from SVN version 2127.

I tried out what you said, it started compiling but ended with errors :(
here's what it said:
warnings:
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_FontManager.cpp||In member function `void MyGUI::FontManager::initialise()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_FontManager.cpp|47|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_FontManager.cpp||In member function `void MyGUI::FontManager::shutdown()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_FontManager.cpp|61|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_InputManager.cpp||In member function `void MyGUI::InputManager::initialise()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_InputManager.cpp|77|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_InputManager.cpp||In member function `void MyGUI::InputManager::shutdown()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_InputManager.cpp|90|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LanguageManager.cpp||In member function `void MyGUI::LanguageManager::initialise()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LanguageManager.cpp|41|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LanguageManager.cpp||In member function `void MyGUI::LanguageManager::shutdown()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LanguageManager.cpp|55|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LayerManager.cpp||In member function `void MyGUI::LayerManager::initialise()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LayerManager.cpp|49|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LayerManager.cpp||In member function `void MyGUI::LayerManager::shutdown()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LayerManager.cpp|70|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LayoutManager.cpp||In member function `void MyGUI::LayoutManager::initialise()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LayoutManager.cpp|44|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LayoutManager.cpp||In member function `void MyGUI::LayoutManager::shutdown()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_LayoutManager.cpp|57|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_PluginManager.cpp||In member function `void MyGUI::PluginManager::initialise()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_PluginManager.cpp|39|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_PluginManager.cpp||In member function `void MyGUI::PluginManager::shutdown()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_PluginManager.cpp|51|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_PointerManager.cpp||In member function `void MyGUI::PointerManager::initialise()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_PointerManager.cpp|51|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_PointerManager.cpp||In member function `void MyGUI::PointerManager::shutdown()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_PointerManager.cpp|81|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_ResourceManager.cpp||In member function `void MyGUI::ResourceManager::initialise()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_ResourceManager.cpp|45|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_ResourceManager.cpp|46|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_ResourceManager.cpp||In member function `void MyGUI::ResourceManager::shutdown()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_ResourceManager.cpp|63|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_ResourceManager.cpp|64|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_SkinManager.cpp||In member function `void MyGUI::SkinManager::initialise()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_SkinManager.cpp|48|warning: `registerLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:76)|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_SkinManager.cpp||In member function `void MyGUI::SkinManager::shutdown()':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_SkinManager.cpp|63|warning: `unregisterLoadXmlDelegate' is deprecated (declared at C:/DOKUME~2/ANDREA~1/Desktop/MYGUI_~1/trunk/MYGUIE~1/include/MyGUI_ResourceManager.h:79)|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|
||Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'" /DEFAULTLIB:"MSVCRT" ' unrecognized|

errors:

CMakeFiles\MyGUIEngine.dir\src\MyGUI_Timer.cpp.obj||In function `ZN5MyGUI5Timer22getCurrentMillisecondsEv':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_Timer.cpp|57|undefined reference to `timeGetTime@0'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\ftbase.obj):(.text[_FT_Raccess_Get_HeaderInfo]+0x4)||undefined reference to `__security_cookie'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\ftbase.obj):(.text[_FT_Raccess_Get_HeaderInfo]+0x1b1)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\ftbase.obj):(.text[_FT_Raccess_Get_HeaderInfo]+0x1c9)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\ftbase.obj):(.text[_IsMacBinary]+0x7)||undefined reference to `__security_cookie'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\ftbase.obj):(.text[_IsMacBinary]+0x25)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\ftbase.obj):(.text[_IsMacBinary]+0xdc)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\ftbase.obj):(.text[_IsMacBinary]+0xf6)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_list_split]+0x4)||undefined reference to `__security_cookie'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_list_split]+0x1b2)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_list_split]+0x1e8)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_list_split]+0x1fe)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_list_split]+0x211)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_set_default_spacing]+0x7)||undefined reference to `__security_cookie'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_set_default_spacing]+0x85)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_set_default_spacing]+0x102)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_set_default_spacing]+0x12b)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_set_default_spacing]+0x154)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_set_default_spacing]+0x16f)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\bdf.obj):(.text[__bdf_parse_properties]+0x131)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\winfnt.obj):(.text[_fnt_face_get_dll_font]+0xd)||undefined reference to `__security_cookie'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\winfnt.obj):(.text[_fnt_face_get_dll_font]+0x1d5)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\winfnt.obj):(.text[_fnt_face_get_dll_font]+0x369)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\winfnt.obj):(.text[_fnt_face_get_dll_font]+0x6e7)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\type1cid.obj):(.text[_cid_parser_new]+0x7)||undefined reference to `__security_cookie'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\type1cid.obj):(.text[_cid_parser_new]+0x2cf)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\type1cid.obj):(.text[_cid_hex_to_binary]+0x7)||undefined reference to `__security_cookie'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\type1cid.obj):(.text[_cid_hex_to_binary]+0x149)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\cff.obj):(.text[_cff_size_init]+0x7)||undefined reference to `__security_cookie'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\cff.obj):(.text[_cff_size_init]+0x1f0)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\cff.obj):(.text[_cff_size_init]+0x210)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\type1.obj):(.text[_parse_charstrings]+0x4)||undefined reference to `__security_cookie'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\type1.obj):(.text[_parse_charstrings]+0x4d8)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\type1.obj):(.text[_parse_charstrings]+0x5f0)||undefined reference to `@__security_check_cookie@4'|
C:\Netzordner\ogre\Dependencies\lib\release\freetype235.lib(..\..\..\objs\release\type1.obj):(.text[_parse_charstrings]+0x616)||undefined reference to `@__security_check_cookie@4'|
||=== Build finished: 35 errors, 43 warnings ===|


And it looked so promising :(
Any ideas what I can do? Looks like something related to VC++ which I don't use...

Altren

24-07-2009 00:06:28

About warnings - sorry, we'll fix it a bit later, so just don't look at them. About errors - are you sure that freetype235.lib is library that gcc takes? It should be something like libfreetype.so.

AndiNo

24-07-2009 00:21:41

Well, it's freetype which comes with the Ogre sources/dependencies. And I downloaded windows binaries for freetype which too only contained lib files. As far as I remember I have used MinGW / gcc before with lib files.
Anyway, there is an error before the freetype errors. What about this?
And thanks for your help so far :)

Altren

24-07-2009 01:05:42

Here's what I have: OgreDependencies_CBMinGW_Shoggoth_20090131\Dependencies\lib\Debug\libfreetype235_d.a and Release\libfreetype235.a
About error above: do svn update - I fixed it.

AndiNo

24-07-2009 09:48:47

You're right, that was my fault. It seems I mixed VC++ and MinGW stuff while trying to compile MyGUI with different compilers :)
However, I have some new errors. They seem related to tonights change you made to a CMake script. Here are the errors:

Configuring MYGUI 3.0.0
CMake Error: File C:/Netzordner/ogre/Dependencies/../Samples/Common/bin/debug/OIS_d.dll does not exist.
CMake Error at CMake/MyGUIInstallDependencies.cmake:64 (configure_file):
configure_file Problem configuring file
Call Stack (most recent call first):
CMake/Dependencies.cmake:28 (include)
CMakeLists.txt:85 (include)


CMake Error: File C:/Netzordner/ogre/Dependencies/../Samples/Common/bin/release/OIS.dll does not exist.
CMake Error at CMake/MyGUIInstallDependencies.cmake:69 (configure_file):
configure_file Problem configuring file
Call Stack (most recent call first):
CMake/Dependencies.cmake:28 (include)
CMakeLists.txt:85 (include)


CMake Error: File C:/Netzordner/ogre/Dependencies/../Samples/Common/bin/release/OIS.dll does not exist.
CMake Error at CMake/MyGUIInstallDependencies.cmake:74 (configure_file):
configure_file Problem configuring file
Call Stack (most recent call first):
CMake/Dependencies.cmake:28 (include)
CMakeLists.txt:85 (include)


CMake Error: File C:/Netzordner/ogre/Dependencies/../Samples/Common/bin/release/OIS.dll does not exist.
CMake Error at CMake/MyGUIInstallDependencies.cmake:79 (configure_file):
configure_file Problem configuring file
Call Stack (most recent call first):
CMake/Dependencies.cmake:28 (include)
CMakeLists.txt:85 (include)


Looking for FREETYPE...
Found FREETYPE: optimized;C:/Netzordner/ogre/Dependencies/lib/release/freetype235.lib;debug;C:/Netzordner/ogre/Dependencies/lib/debug/freetype235_D.lib
Looking for OGRE
Using OGRE SDK
Looking for DirectX...
DirectX_PREFIX_PATH changed.
Could not locate DirectX
Looking for OIS...
Found OIS: optimized;C:/Netzordner/ogre/Dependencies/lib/release/OIS.lib;debug;C:/Netzordner/ogre/Dependencies/lib/debug/OIS_d.lib
Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

-----------------------------------------------------------------------------
-- The following external packages were located on your system.
-- This installation will have the extra features provided by these packages.
+ freetype
+ ogre
+ opengl
+ OIS
-----------------------------------------------------------------------------
-- The following OPTIONAL packages could NOT be located on your system.
-- Consider installing them to enable more features from this software.
+ DirectX: Support for the DirectX render system <http://msdn.microsoft.com/en-us/directx/>
+ Doxygen: Tool for building API documentation <http://doxygen.org>
-----------------------------------------------------------------------------

Configuring incomplete, errors occurred!


Yesterday this worked flawlessly. Please have a look at it :)

AndiNo

24-07-2009 14:33:37

Don't know what I changed but CMake works now. Interesting thing, CMake says that it doesn't find OIS (yesterday it did), but in compilation it tries to find it anyway. I had to replace "#include <OIS.h>" with "#include <OIS/OIS.h>" in trunk\MyGUIEngine\include\MyGUI_Gui.h then it worked again.
Anyway, the timer error remains there:

CMakeFiles\MyGUIEngine.dir\src\MyGUI_Timer.cpp.obj||In function `ZN5MyGUI5Timer22getCurrentMillisecondsEv':|
C:\Dokumente und Einstellungen\Andreas Noeding\Desktop\MyGUI_src\trunk\MyGUIEngine\src\MyGUI_Timer.cpp|61|undefined reference to `timeGetTime@0'|
||=== Build finished: 1 errors, 20 warnings ===|


We nearly did it ;)

Altren

24-07-2009 19:00:49

Here's what winmm library I have in MinGW: C:\MinGW\lib\libwinmm.a, so I wrote#pragma comment(lib, "libwinmm.a") for MinGW. Check what do you have and check if you have __MINGW32__ defined (MinGW should do it) so this lib actually linked.

AndiNo

24-07-2009 22:06:17

Ok, I'm not getting it to work. Compiler complains about not finding OIS.h even if I add all possible directories to the include-path. May be my fault, I have no idea.
I will pick this up again in one or two weeks when I'll be back. Thanks for your help so far! :)

AndiNo

01-08-2009 20:51:01

Ok I'm back! I have a question: What exactly does your MYGUI_DEPENDENCIES_DIR look like when setting up MyGUI with CMake?
I copied all OIS and Ogre header files into one folder. Now the compiler finds OIS but still not Ogre. Please tell me how your directory structure looks like (or should look like).

Altren

01-08-2009 21:06:38

My MYGUI_DEPENDENIES_DIR is E:/Ger/Programming/Ogre/Dependencies, so it's just Ogre dependencies.
About Ogre folders - script tries to find OGRE_SRC or OGRE_HOME system variable and use it. So I have OGRE_SRC environment variable that is E:\Ger\Programming\Ogre .

AndiNo

01-08-2009 21:57:04

Thanks for your very fast reply :)
My folders now look like yours. But after SVN update (when clicking on "generate" in CMake):
CMake Error in MyGUIEngine/CMakeLists.txt:
Cannot find source file "MyGUI_Data.h". Tried extensions .c .C .c++ .cc
.cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp .hxx .in .txx

:(

Altren

01-08-2009 22:29:38

Just update from svn once more.

AndiNo

02-08-2009 11:23:33

Thanks, that works again. But I guess I'm doing something really wrong here, I'm not sure. When clicking on generate:
Configuring MYGUI 3.0.0
Looking for FREETYPE...
Found FREETYPE: optimized;D:/Programmieren/Tools/OgreSRC/Dependencies/lib/release/libfreetype235.a;debug;D:/Programmieren/Tools/OgreSRC/Dependencies/lib/debug/libfreetype235_d.a
Looking for OGRE
Using OGRE SDK
Using OGRE built from source
Looking for DirectX...
DirectX_PREFIX_PATH changed.
Could not locate DirectX
Looking for OIS...
Could not locate OIS

It doesn't find OIS although it is there. I tested generatig with VC++ and OIS was found. After looking I found out that the MinGW dependencies don't have any OIS libs. Did I miss something or do you not have any, too?

edit: MYGUI_NO_OIS is not defined even if CMake does NOT find OIS. This doesn't make sense.

AndiNo

02-08-2009 11:37:46

I copied the libOIS.a from the OSX dependencies, seems to satisfy CMake. Now I have another compiler error:

D:\Programmieren\mygui\myguiSVN\trunk\MyGUIEngine\include\MyGUI_ResourceLanguage.h|47|error: declaration of `typedef class std::vector<std::string, std::allocator<std::string> > MyGUI::ResourceLanguage::VectorString'|
D:\Programmieren\mygui\myguiSVN\trunk\MyGUIEngine\include\MyGUI_Types.h|50|error: changes meaning of `VectorString' from `typedef class std::vector<std::string, std::allocator<std::string> > MyGUI::VectorString'|
||=== Build finished: 2 errors, 0 warnings ===|

Any ideas?

Altren

03-08-2009 15:11:53

One more update :oops:

AndiNo

03-08-2009 16:08:17

Thanks - but TortoiseSVN shows me that the latest revision is 2152. There seems to be no update ^^

btw: I still have problems with the timeGetTime function. The "pragma comment" doesn't seem to work (although it gets compiled). I tried to set the libwinmm.a in the linker settings, but any changes made there seem to have no effect (might have to do with CMake generated makefiles).

AndiNo

06-08-2009 10:38:03

Update: I fixed the problem with the timeGetTime function by manually adding libwinmm.a in the CMakeLists.txt. Then MyGUIEngine compiled without further errors.
But I couldn't compile the LayoutEditor because the compiler couldn't find lOgreMain although I configured the paths correctly in CMake. This worked after I replaced "-lOgreMain" with the full path to the OgreMain.dll in one of the link.txt's. Then however some new errors popped up which I cannot handle:
(I cut out the warnings)

CMakeFiles\LayoutEditor.dir\InputManager.cpp.obj||In function `ZN5input12InputManager12destroyInputEv':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Tools\LayoutEditor\InputManager.cpp|287|undefined reference to `OIS::InputManager::destroyInputSystem(OIS::InputManager*)'|
CMakeFiles\LayoutEditor.dir\InputManager.cpp.obj||In function `ZN5input12InputManager11createInputEPN4Ogre12RenderWindowEbPN3OIS13MouseListenerEPNS4_11KeyListenerE':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Tools\LayoutEditor\InputManager.cpp|237|undefined reference to `OIS::InputManager::createInputSystem(std::multimap<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > >&)'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerD0Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerD1Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerD2Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj):D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|more undefined references to `MyGUI::DataManager::~DataManager()' follow|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerC1Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp|55|undefined reference to `MyGUI::DataManager::DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerC1Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerC2Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp|55|undefined reference to `MyGUI::DataManager::DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerC2Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerD2Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::~TextureManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerD1Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::~TextureManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerD0Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGInfo: resolving vtable for MyGUI::Exceptionby linking to __imp___ZTVN5MyGUI9ExceptionE (auto-import)|
||Info: resolving Ogre::StringUtil::BLANK by linking to __imp___ZN4Ogre10StringUtil5BLANKE |
||Info: resolving Ogre::ColourValue::White by linking to __imp___ZN4Ogre11ColourValue5WhiteE |
||Info: resolving Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME by linking to __imp___ZN4Ogre20ResourceGroupManager27DEFAULT_RESOURCE_GROUP_NAMEE |
||Info: resolving vtable for Ogre::Exceptionby linking to __imp___ZTVN4Ogre9ExceptionE |
||Info: resolving Ogre::Matrix4::IDENTITY by linking to __imp___ZN4Ogre7Matrix48IDENTITYE |
||Info: resolving Ogre::ColourValue::ZERO by linking to __imp___ZN4Ogre11ColourValue4ZEROE |
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerC1Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::TextureManager()'|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::~TextureManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerC2Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::TextureManager()'|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::~TextureManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerD2Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerD1Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerD0Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManager13windowResizedEPN4Ogre12RenderWindowE':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp|276|undefined reference to `MyGUI::Gui::resizeWindow(MyGUI::types::TSize<int> const&)'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerC1Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp|35|undefined reference to `MyGUI::RenderManager::RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerC1Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerC2Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp|35|undefined reference to `MyGUI::RenderManager::RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerC2Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
||=== Build finished: 27 errors, 27 warnings ===|


btw: I used the version 2131 because there is no 2153 (see above).

Altren

06-08-2009 12:05:59

Oh, weird.. Try to add OIS and MyGUI.OgrePlatform libs manually to LayoutEditor (it should be done by CMake :( ). Also try to build Demos.

AndiNo

06-08-2009 18:14:34

I added those two libs. Here are the new errors: :?

..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerD0Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerD1Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerD2Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj):D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|more undefined references to `MyGUI::DataManager::~DataManager()' follow|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerC1Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp|55|undefined reference to `MyGUI::DataManager::DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerC1Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerC2Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp|55|undefined reference to `MyGUI::DataManager::DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreDataManager.cpp.obj)||In function `ZN5MyGUI15OgreDataManagerC2Ev':|
D:\Programmieren\Tools\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\ext\new_allocator.h|69|undefined reference to `MyGUI::DataManager::~DataManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerD2Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::~TextureManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerD1Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::~TextureManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerD0Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::~TextureManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerC1Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::TextureManager()'|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::~TextureManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreTextureManager.cpp.obj)||In function `ZN5MyGUI18OgreTextureManagerC2Ev':|
||Info: resolving vtable for MyGUI::Exceptionby linking to __imp___ZTVN5MyGUI9ExceptionE |
||Info: resolving Ogre::StringUtil::BLANK by linking to __imp___ZN4Ogre10StringUtil5BLANKE |
||Info: resolving Ogre::ColourValue::White by linking to __imp___ZN4Ogre11ColourValue5WhiteE |
||Info: resolving Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME by linking to __imp___ZN4Ogre20ResourceGroupManager27DEFAULT_RESOURCE_GROUP_NAMEE |
||Info: resolving vtable for Ogre::Exceptionby linking to __imp___ZTVN4Ogre9ExceptionE |
||Info: resolving Ogre::Matrix4::IDENTITY by linking to __imp___ZN4Ogre7Matrix48IDENTITYE |
||Info: resolving Ogre::ColourValue::ZERO by linking to __imp___ZN4Ogre11ColourValue4ZEROE |
eManager.cpp|32|undefined reference to `MyGUI::TextureManager::TextureManager()'|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp|32|undefined reference to `MyGUI::TextureManager::~TextureManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerD2Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerD1Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerD0Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManager13windowResizedEPN4Ogre12RenderWindowE':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp|276|undefined reference to `MyGUI::Gui::resizeWindow(MyGUI::types::TSize<int> const&)'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerC1Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp|35|undefined reference to `MyGUI::RenderManager::RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerC1Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerC2Ev':|
D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp|35|undefined reference to `MyGUI::RenderManager::RenderManager()'|
..\..\lib\libMyGUI.OgrePlatform.a(MyGUI_OgreRenderManager.cpp.obj)||In function `ZN5MyGUI17OgreRenderManagerC2Ev':|
D:\Programmieren\Tools\OgreSRC\OgreMain\include\OgreWindowEventUtilities.h|51|undefined reference to `MyGUI::RenderManager::~RenderManager()'|
||=== Build finished: 25 errors, 27 warnings ===|

Altren

06-08-2009 18:31:50

Well, and probably MyGUIengine library...

AndiNo

06-08-2009 22:21:06

The "MyGUIEngine" is already included. So I can't do that^^
Other ideas?

Altren

06-08-2009 22:43:54

Try to link it to MyGUI.OgrePlatform.

AndiNo

06-08-2009 23:32:30

Try to add OIS and MyGUI.OgrePlatform libs manually to LayoutEditor
I added those two libs.
already done :) I hoped you had some even newer idea ;)

AndiNo

07-08-2009 01:45:31

I changed my plans. I will just use the MyGUIEngine which I finally got to compile. The rest isn't that important now.
Okay I added the MyGUI libs and includes. Ogre and MyGUI start... but MyGUI crashes during initialization. (I found a thread with the exact same problem which was never solved.)
Here's my log:

----------------------------------------------------------------------------------------------------------------------------------
loging report for : 08/07/2009 02:48:37
----------------------------------------------------------------------------------------------------------------------------------

02:48:37 | Platform | Info | * Initialise: OgreRenderManager | D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp | 40
02:48:37 | Platform | Info | OgreRenderManager successfully initialized | D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreRenderManager.cpp | 118
02:48:37 | Platform | Info | * Initialise: OgreTextureManager | D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp | 37
02:48:37 | Platform | Info | OgreTextureManager successfully initialized | D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreTextureManager.cpp | 39
02:48:37 | Platform | Info | * Initialise: OgreDataManager | D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp | 60
02:48:37 | Platform | Info | OgreDataManager successfully initialized | D:\Programmieren\mygui\myguiSVN2131\trunk\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp | 64
02:48:37 | Core | Info | * Initialise: Gui | D:\Programmieren\mygui\myguiSVN2131\trunk\MyGUIEngine\src\MyGUI_Gui.cpp | 83
02:48:37 | Core | Info | * MyGUI version 3.0.0 | D:\Programmieren\mygui\myguiSVN2131\trunk\MyGUIEngine\src\MyGUI_Gui.cpp | 87
02:48:37 | Core | Info | * Initialise: ResourceManager | D:\Programmieren\mygui\myguiSVN2131\trunk\MyGUIEngine\src\MyGUI_ResourceManager.cpp | 43
02:48:37 | Core | Info | ResourceManager successfully initialized | D:\Programmieren\mygui\myguiSVN2131\trunk\MyGUIEngine\src\MyGUI_ResourceManager.cpp | 51
02:48:37 | Core | Info | * Initialise: LayerManager | D:\Programmieren\mygui\myguiSVN2131\trunk\MyGUIEngine\src\MyGUI_LayerManager.cpp | 45

And that's all I do for now:
MyGUI::OgrePlatform* mPlatform = new MyGUI::OgrePlatform();
mPlatform->initialise(mWindow); // mWindow is Ogre::RenderWindow* where you want to render MyGUI
MyGUI::Gui * mGUI = new MyGUI::Gui();
mGUI->initialise();

I'm nearly there :)

Altren

07-08-2009 14:14:55

I need to know where it crashes, please try to debug it. I looked through LayerManager initialization and found nothing that may cause crash.

AndiNo

07-08-2009 15:57:07

Here's the callstack:
#0 02693C69 std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string() (D:/Programmieren/Tools/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/basic_string.h:198)
#1 025678FA MyGUI::LayerManager::initialise(this=0x82478c0) (D:/Programmieren/Tools/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/ext/new_allocator.h:62)
#2 0254BB6A MyGUI::Gui::initialise(this=0x825ad18, _core=@0x22fe30, _logFileName=@0x22fec0) (D:/Programmieren/mygui/myguiSVN2131/trunk/MyGUIEngine/src/MyGUI_Gui.cpp:108)
#3 00402C80 _fu1___ZN4Ogre11ColourValue5BlackE() (D:/Programmieren/SMR/SMRApp.cpp:141)
#4 00401898 SMRApp::go(this=0x529160) (D:/Programmieren/SMR/SMRApp.cpp:21)
#5 0040D0F1 main(argc=2, argv=0x3d9f88) (D:/Programmieren/SMR/main.cpp:36)


btw: Currently I'm not using MinGW Toolbox (because it's not required for Ogre anymore). Could that be the problem?

edit: Compiling my program with MinGW Toolbox doesn't change anything. Maybe I have to recompile the mygui.gll ?

Altren

07-08-2009 17:39:27

First Ogre doesn't require MinGW toolbox only if you use latest MinGW (probably with gcc 4 - not 3.*). And yes - you need to recompile MyGUI dlls.

AndiNo

07-08-2009 23:34:06

I recompiled the MyGUIEngine and OgrePlatform with MinGW Toolbox and my project too. But the errors remain there... I'm clueless again :(

#0 02733C69 std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string() (D:/Programmieren/Tools/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/basic_string.h:198)
#1 026078FA MyGUI::LayerManager::initialise(this=0x8307070) (D:/Programmieren/Tools/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/ext/new_allocator.h:62)
#2 025EBB6A MyGUI::Gui::initialise(this=0x82a7a40, _core=@0x22fe30, _logFileName=@0x22fec0) (D:/Programmieren/mygui/myguiSVN2131/trunk/MyGUIEngine/src/MyGUI_Gui.cpp:108)
#3 00402C90 _fu1___ZN4Ogre11ColourValue5BlackE() (D:/Programmieren/SMR/SMRApp.cpp:141)
#4 004018A8 SMRApp::go(this=0x568160) (D:/Programmieren/SMR/SMRApp.cpp:21)
#5 0040D411 main(argc=2, argv=0x3d9f90) (D:/Programmieren/SMR/main.cpp:36)

AndiNo

09-08-2009 23:28:59

Doesn't anyone have any idea? I don't want to give up so close before getting it to work :(

jdc1515

14-08-2009 04:39:35

Hi everyone,

First post here. Well, somehow I managed to get MyGUI (SVN 2162) to build with MinGW. Sorry I can't remember exactly what I did but here is a link to download the binaries:
http://www.megaupload.com/?d=19O61ZW3
If someone requests it I can upload all of the files I used/changed as well. Hopefully this will be of use to someone.

Also, I don't know if anyone else has had this problem (I'm rather new at coding), but I think it may apply to this build specifically so I'll post it.
The cursor was stuck in the top left 50x50 square but I managed to resolve it with OIS:

mMouse->setEventCallback(this);
const OIS::MouseState &mstate = mMouse->getMouseState();
mstate.width = mWindow->getWidth();
mstate.height = mWindow->getHeight();

AndiNo

14-08-2009 12:49:12

Wow! Thanks, you're saving me :) I'll try your build when I have the time. I guess if it works for you it should work for me too right? ;)

AndiNo

17-08-2009 11:40:05

Works flawlessly 8) And yes, I'm interested in what you changed to make it work. Maybe I can learn something :)
PS: I switched again and now don't use the Toolbox as it screwed up my Ogre debug overlays (more exactly the strings in it).
Are you going to post some binaries here every once in a while? THAT would be fantastic! :)

jdc1515

18-08-2009 16:13:00

Well, if I remember correctly, this is what I did. First I used MinGW (NOT Toolbox) current release with Code::Blocks 8.02. Ogre 1.6.3 was used and was compiled from sources (with the precompiled dependencies).

The first source file I changed was MyGUI_ResourceLanguage.h:

#ifndef __MYGUI_RESOURCE_LANGUAGE_H__
#define __MYGUI_RESOURCE_LANGUAGE_H__

#include "MyGUI_Prerequest.h"
#include "MyGUI_IResource.h"
#include "MyGUI_Enumerator.h"

namespace MyGUI
{

class MYGUI_EXPORT ResourceLanguage :
public IResource
{
MYGUI_RTTI_DERIVED( ResourceLanguage );

public:
ResourceLanguage();
virtual ~ResourceLanguage();

virtual void deserialization(xml::ElementPtr _node, Version _version);

Enumerator<VectorString> getEnumerator();

private:
//typedef std::vector<std::string> VectorString;
VectorString mSources;
};

} // namespace MyGUI

Basically it had a redundant typedef which MinGW complains about (but not Visual C++). This was commented out.
In MyGUI_UString.h:

//! std::wostream write operator \relates UString
// inline std::wostream& operator << ( std::wostream& os, const UString& s )
// {
// return os << s.asWStr();
// }

This function was commented out because it isn't used anywhere. MinGW complains about this because it has problems Ogre's UTFString. MinGW Toolbox doesn't have these problems but I couldn't get Ogre to build with it.

After modifying these source files I basically reworked the Code::Blocks project file (.cbp) for MyGUIEngine. I re-added all the cpp and h files because the previous project file references were outdated. MyGUI_ProgressFactory.cpp gave problems and seemed not to be used anywhere so was removed. Next I changed the build targets to the appropriate names and linked freetype from the precompiled Ogre dependencies. After this it finally built :D . As far as I remember these are the steps I took but I might have missed a few things. As for making builds I'm sorry but I'm going to be busy with school after summer is over.

Here is a zip with the files I used:
http://www.megaupload.com/?d=NPTVW4UO

AndiNo

18-08-2009 20:22:07

Thanks a lot, I think this will help me in the future. Maybe I'll manage to build MyGUI myself then :) The CMake generated CB project files don't seem to work right yet. I will base any work now upon your files which seem to work. Thanks for your help! :)

Altren

18-08-2009 21:11:09

By the way - I commited source changes to svn.

Yirkash

16-04-2010 09:17:43

Sorry to bump an old thread, but I thought it might be useful to note how I solved AndiNo's MyGUI LayoutEditor linking problem, for other people searching for the same error. I also had the same undefined references to the constructors and destructors for MyGUI::DataManager, MyGUI::RenderManager and others when linking the executable. I tried to add the MyGUIEngine_d.dll and MyGUI.OgrePlatform_d libraries (libMyGUIEngine_d.dll.a and libMyGUI.OgrePlatform_d.a respectively) with no success. Then I thought that maybe the problem was in the search directories supplied to the linker by the CMake script, so I added the path to those libraries to the search directories used by the linker, and managed to compile LayoutEditor successfully. Bear in mind I had to also specify those two libraries, even though the linker already had them specified by filename.

For those not familiar with CMake-generated makefiles, who may be wondering how to add those options to the linker, you will need to locate the destination directory where CMake created your project files and, from there, navigate to the Tools/LayoutEditor/CMakeFiles/LayoutEditor.dir subdirectory. That's where LayoutEditor's object files are created, and where several CMake files reside. One of these files is link.txt which, as its name implies, has the linking command, typically starting with "C:\MinGW\bin\g++.exe". I had to add the following to the end of the commandline:

-LC:\(path_to_build_dir)\lib -lMyGUIEngine_d.dll -lMyGUI.OgrePlatform_d

Obviously, you should substitue "C:\(path_to_build_dir)\lib" with the actual path to the library directory where the rest of the CMake build targets created the MyGUI libraries (libMyGUI.OgrePlatform_d.a and libMyGUIEngine_d.dll.a). Note backslashes work here.

So if, for example, you told CMake to use "C:/MyGUI_bin_d" as the path where to build the binaries, you should locate link.txt in C:\MyGUI_bin_d\Tools\LayoutEditor\CMakeFiles\LayoutEditor.dir and you should add to it:

-LC:\MyGUI_bin_d\lib -lMyGUIEngine_d.dll -lMyGUI.OgrePlatform_d

For reference to those of you who may be reading this post some time after it was written, I'm using:
OGRE 1.7
MyGUI 3.0.1
Code::Blocks 8.02
GCC 4.4.1 (TDM-2 mingw32) (from tdragon.net)

Alekiel

17-04-2010 18:10:17

Its good I saw this thread, because I am having several problems with MyGUI + MinGW in Windows7.

The first problem that is presenting is the undefined reference to timeGetTime(). AndiNo said he fixed it by adding libwinmm to CMakeList.txt, but I have no clue how to do this. Anybody can please explain that?

Yirkash

18-04-2010 22:15:59

When configuring the build with CMake, search for the entries CMAKE_CXX_STANDARD_LIBRARIES and CMAKE_C_STANDARD_LIBRARIES. Both of them should look mostly like this: "-lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32". Just add "-lwinmm" to the end of the list of libraries on both entries, and configure again, then generate again. That should add the library to the makefiles generated by CMake.

Alekiel

19-04-2010 04:41:03

Thanks, that worked. Some other issues arose (such as it complaining about undefined references to OIS::InputManager) and when building MyGUIEngine, I noticed an absurd number of warnings, apparently all seemingly the same:

H:\MyGUI3.0\MyGUIEngine\include\MyGUI_IResource.h||In destructor 'virtual MyGUI::IResource::~IResource()':|
H:\MyGUI3.0\MyGUIEngine\include\MyGUI_IResource.h|68|warning: visibility attribute not supported in this configuration; ignored [-Wattributes]|


When I tried to add MyGUI to my project this came up:

::Singleton()]+0x99)||undefined reference to `MyGUI::Singleton<MyGUI::OgreDataManager>::INSTANCE_TYPE_NAME'|

This same project works flawlessly in Linux (where MyGUI also compiles with absolutely no issues). I assume this is an issue with the compiled MyGUI library. Anybody's go an idea?

My setup is the same as Yirkash's:
OGRE 1.7
MyGUI 3.0.1
Code::Blocks 8.02
GCC 4.4.1 (TDM-2 mingw32, from tdragon.net, too).

Altren

19-04-2010 15:39:12

Open MyGUI_Singleton.h and replace line 28#if MYGUI_PLATFORM == MYGUI_PLATFORM_WIN32with#if MYGUI_COMPILER == MYGUI_COMPILER_MSVC

Alekiel

20-04-2010 05:19:36

It worked indeed.

Thanks a lot man.

trilader

28-04-2010 17:59:27

Hi,
after searching the forums I still have a problem compiling MyGUI...
It can't find Boost. I allready tried using -DBOOST_ROOT=F:/boost_1_42_sdk which is the path to my boost installation.
Somewhere else on the forum I read about using -DOGRE_CONFIG_THREAD_PROVIDER=1 helps but it didn't work either.

My system:
- Ogre SDK 1.7.0
- MyGui 3.0.2 (from http://my-gui.svn.sourceforge.net/svnro ... s/MyGUI3.0)
- MinGw GCC 4.4.1 (TDM-2 mingw32) (from http://www.tdragon.net/recentgcc/)
- Code::Blocks 8.02

The part of the build process where it fails:
[ 42%] Built target MyGUIEngine
[ 42%] Building CXX object Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/src/MyGUI_OgreDataManager.cpp.obj
In file included from F:/OgreSDK_1_7_0/include/OGRE/Threading/OgreThreadHeaders.h:30,
from F:/OgreSDK_1_7_0/include/OGRE/OgreStdHeaders.h:110,
from F:/OgreSDK_1_7_0/include/OGRE/OgrePrerequisites.h:315,
from F:/OgreSDK_1_7_0/include/OGRE/OgreDataStream.h:31,
from C:\Users\trilader\Desktop\MyGUI3.02\Platforms\Ogre\OgrePlatform\include/MyGUI_OgreDataStream.h:14,
from C:\Users\trilader\Desktop\MyGUI3.02\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp:10:
F:/OgreSDK_1_7_0/include/OGRE/Threading/OgreThreadHeadersBoost.h:29:32: error: boost/thread/tss.hpp: No such file or directory
F:/OgreSDK_1_7_0/include/OGRE/Threading/OgreThreadHeadersBoost.h:30:44: error: boost/thread/recursive_mutex.hpp: No such file or directory
F:/OgreSDK_1_7_0/include/OGRE/Threading/OgreThreadHeadersBoost.h:31:38: error: boost/thread/condition.hpp: No such file or directory
F:/OgreSDK_1_7_0/include/OGRE/Threading/OgreThreadHeadersBoost.h:32:35: error: boost/thread/thread.hpp: No such file or directory
F:/OgreSDK_1_7_0/include/OGRE/Threading/OgreThreadHeadersBoost.h:33:41: error: boost/thread/shared_mutex.hpp: No such file or directory
F:/OgreSDK_1_7_0/include/OGRE/Threading/OgreThreadHeadersBoost.h:34:34: error: boost/thread/locks.hpp: No such file or directory
In file included from F:/OgreSDK_1_7_0/include/OGRE/OgreIteratorWrappers.h:33,
from F:/OgreSDK_1_7_0/include/OGRE/OgreAnimation.h:34,
from F:/OgreSDK_1_7_0/include/OGRE/Ogre.h:33,
from C:\Users\trilader\Desktop\MyGUI3.02\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp:12:
F:/OgreSDK_1_7_0/include/OGRE/OgreIteratorRange.h:34:27: error: boost/range.hpp: No such file or directory
In file included from F:/OgreSDK_1_7_0/include/OGRE/OgreDataStream.h:33,
from C:\Users\trilader\Desktop\MyGUI3.02\Platforms\Ogre\OgrePlatform\include/MyGUI_OgreDataStream.h:14,
from C:\Users\trilader\Desktop\MyGUI3.02\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp:10:
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:67: error: 'boost' has not been declared
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:67: error: expected ';' before '*' token
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h: In constructor 'Ogre::SharedPtr<T>::SharedPtr()':
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:74: error: 'mutex' was not declared in this scope
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h: In constructor 'Ogre::SharedPtr<T>::SharedPtr(Y*, Ogre::SharedPtrFreeMethod)':
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:87: error: 'mutex' was not declared in this scope
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:88: error: expected type-specifier before 'boost'
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:88: error: expected ';' before 'boost'
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h: In copy constructor 'Ogre::SharedPtr<T>::SharedPtr(const Ogre::SharedPtr<T>&)':
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:95: error: 'mutex' was not declared in this scope
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:98: error: 'boost' has not been declared
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:98: error: expected ';' before 'ogrenameLock'
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h: In constructor 'Ogre::SharedPtr<T>::SharedPtr(const Ogre::SharedPtr<Y>&)':
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:126: error: 'mutex' was not declared in this scope
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:129: error: 'boost' has not been declared
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:129: error: expected ';' before 'ogrenameLock'
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h: In member function 'void Ogre::SharedPtr<T>::bind(T*, Ogre::SharedPtrFreeMethod)':
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:166: error: 'mutex' was not declared in this scope
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:166: error: expected type-specifier before 'boost'
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:166: error: expected ';' before 'boost'
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:167: error: 'boost' has not been declared
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:167: error: expected ';' before 'ogreAutoMutexLock'
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h: In member function 'bool Ogre::SharedPtr<T>::unique() const':
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:173: error: 'mutex' was not declared in this scope

--SNIP--

F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:250: error: 'class Ogre::SharedPtr<Ogre::HardwareVertexBuffer>' has no member named 'mutex'
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h: In member function 'void Ogre::SharedPtr<T>::swap(Ogre::SharedPtr<T>&) [with T = Ogre::DataStream]':
C:\Users\trilader\Desktop\MyGUI3.02\Platforms\Ogre\OgrePlatform\src\MyGUI_OgreDataManager.cpp:134: instantiated from here
F:/OgreSDK_1_7_0/include/OGRE/OgreSharedPtr.h:250: error: 'class Ogre::SharedPtr<Ogre::DataStream>' has no member named 'mutex'
mingw32-make[2]: *** [Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/src/MyGUI_OgreDataManager.cpp.obj] Error 1
mingw32-make[1]: *** [Platforms/Ogre/OgrePlatform/CMakeFiles/MyGUI.OgrePlatform.dir/all] Error 2
mingw32-make: *** [all] Error 2


I have snipped the logfile so you don't have to read all those repeating errors about not finding boost...

I hope someone knows how to fix this... I don't :-)

edit: fixed a typo

trilader

30-04-2010 06:34:18

Hi again,
I have successfully managed to compile MyGUI now and want to tell you how in case someone has the same problem.
First, I'm not happy with my method of fixing this, so if someone knows how to do this better please tell me.

1. I had to copy my boost include folder (named "boost" in the directory "boost_1_42" e.g. from OGRE) into the "include" folder of Ogre where the Makefile/CMake will look for shure.

2. After I ran CMake I opened all "link.txt" files belonging to the demos, the tools and the MyGUI.OgrePlatform projects and first replaced ..\..\lib\libMyGUIEngine.dll.a with nothing (I removed it) after that I replaced -lOgreMain with ..\..\lib\libMyGUIEngine.dll.a C:\Dev\OgreSDK_mingw_v1-7-0\lib\release\libOgreMain.dll.a which is to move the MyGUI engine liberary further ahead in the include order and also specifies the whole path to the ogre lib as it couldn't find it otherwise

After doing that MyGUI and the demos built just fine and are working.

Yanko

26-06-2010 16:26:25

Heya folks!

I'm a total CMake n00b, so there's a slight deal of chance that i might have done something wrong in the process. But anyway, i *think* i have managed to compile libMyGUIEngine.dll and libMyGUI.OgrePlatform.a (and one of the things that make me think that i probably did something wrong is that it didn't deploy any _d's, only the release). But anyway, i managed to compile it, and when i ran, i got a singleton error:


Initialise: RenderManager
RenderManager successfully initialized
* Initialise: DataManager
DataManager successfully initialized
* Initialise: Gui
* MyGUI version 3.1.0
* Initialise: ResourceManager
ResourceManager successfully initialized
* Initialise: LayerManager
LayerManager successfully initialized
* Initialise: WidgetManager
WidgetManager successfully initialized
* Initialise: InputManager
InputManager successfully initialized
* Initialise: SubWidgetManager
SubWidgetManager successfully initialized
* Initialise: SkinManager
SkinManager successfully initialized
* Initialise: FontManager
FontManager successfully initialized
* Initialise: ControllerManager
ControllerManager successfully initialized
* Initialise: PointerManager
PointerManager successfully initialized
* Initialise: ClipboardManager
ClipboardManager successfully initialized
* Initialise: LayoutManager
LayoutManager successfully initialized
* Initialise: DynLibManager
DynLibManager successfully initialized
* Initialise: PluginManager
PluginManager successfully initialized
* Initialise: LanguageManager
LanguageManager successfully initialized
* Initialise: FactoryManager
FactoryManager successfully initialized
* Initialise: ToolTipManager
ToolTipManager successfully initialized
[b]Singleton instance DataManager was not created[/b]


I found on some other thread that i might not have initialized the platform, so i decided to use the exact same code in the wiki:


MyGUI::Gui * mGUI;
MyGUI::OgrePlatform* mPlatform = new MyGUI::OgrePlatform();
mPlatform->initialise(m_window, m_sceneMgr); // mWindow is Ogre::RenderWindow*, mSceneManager is Ogre::SceneManager*
mGUI = new MyGUI::Gui();
mGUI->initialise();


any ideas what might be causing the problem?
thanks a lot!