Where is my error (Link)

Bpopey

07-09-2010 05:58:12

Hello ...

I am not that talented, I must confess. I just tried QuickGUI10.8 package, and I am facing a problem on the demo .
When I try to compile the project, I have these messages:

Creating library C:\Ogre\QuickGUI_10_8\QuickGUIOgreDemo\\bin\QuickGUIOgreDemo.lib and object C:\Ogre\QuickGUI_10_8\QuickGUIOgreDemo\\bin\QuickGUIOgreDemo.exp
1>main.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::FontManager * QuickGUI::Singleton<class QuickGUI::FontManager>::ms_Singleton" (?ms_Singleton@?$Singleton@VFontManager@QuickGUI@@@QuickGUI@@1PAVFontManager@2@A)
1>DemoApp.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::FontManager * QuickGUI::Singleton<class QuickGUI::FontManager>::ms_Singleton" (?ms_Singleton@?$Singleton@VFontManager@QuickGUI@@@QuickGUI@@1PAVFontManager@2@A)
1>MainWindow.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::FontManager * QuickGUI::Singleton<class QuickGUI::FontManager>::ms_Singleton" (?ms_Singleton@?$Singleton@VFontManager@QuickGUI@@@QuickGUI@@1PAVFontManager@2@A)
1>main.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::MessageManager * QuickGUI::Singleton<class QuickGUI::MessageManager>::ms_Singleton" (?ms_Singleton@?$Singleton@VMessageManager@QuickGUI@@@QuickGUI@@1PAVMessageManager@2@A)
1>DemoApp.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::MessageManager * QuickGUI::Singleton<class QuickGUI::MessageManager>::ms_Singleton" (?ms_Singleton@?$Singleton@VMessageManager@QuickGUI@@@QuickGUI@@1PAVMessageManager@2@A)
1>MainWindow.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::MessageManager * QuickGUI::Singleton<class QuickGUI::MessageManager>::ms_Singleton" (?ms_Singleton@?$Singleton@VMessageManager@QuickGUI@@@QuickGUI@@1PAVMessageManager@2@A)
1>main.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::Log * QuickGUI::Singleton<class QuickGUI::Log>::ms_Singleton" (?ms_Singleton@?$Singleton@VLog@QuickGUI@@@QuickGUI@@1PAVLog@2@A)
1>DemoApp.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::Log * QuickGUI::Singleton<class QuickGUI::Log>::ms_Singleton" (?ms_Singleton@?$Singleton@VLog@QuickGUI@@@QuickGUI@@1PAVLog@2@A)
1>MainWindow.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::Log * QuickGUI::Singleton<class QuickGUI::Log>::ms_Singleton" (?ms_Singleton@?$Singleton@VLog@QuickGUI@@@QuickGUI@@1PAVLog@2@A)
1>main.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::SkinManager * QuickGUI::Singleton<class QuickGUI::SkinManager>::ms_Singleton" (?ms_Singleton@?$Singleton@VSkinManager@QuickGUI@@@QuickGUI@@1PAVSkinManager@2@A)
1>DemoApp.obj : error LNK2019: unresolved external symbol "protected: static class QuickGUI::SkinManager * QuickGUI::Singleton<class QuickGUI::SkinManager>::ms_Singleton" (?ms_Singleton@?$Singleton@VSkinManager@QuickGUI@@@QuickGUI@@1PAVSkinManager@2@A) referenced in function "public: __thiscall std::_Tree<class std::_Tmap_traits<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class QuickGUI::SkinElement *,struct std::less<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const ,class QuickGUI::SkinElement *> >,0> >::_Tree<class std::_Tmap_traits<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class QuickGUI::SkinElement *,struct std::less<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const ,class QuickGUI::SkinElement *> >,0> >(class std::_Tree<class std::_Tmap_traits<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class QuickGUI::SkinElement *,struct std::less<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const ,class QuickGUI::SkinElement *> >,0> > const &)" (??0?$_Tree@V?$_Tmap_traits@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVSkinElement@QuickGUI@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVSkinElement@QuickGUI@@@std@@@2@$0A@@std@@@std@@QAE@ABV01@@Z)
1>MainWindow.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::SkinManager * QuickGUI::Singleton<class QuickGUI::SkinManager>::ms_Singleton" (?ms_Singleton@?$Singleton@VSkinManager@QuickGUI@@@QuickGUI@@1PAVSkinManager@2@A)
1>main.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::Core * QuickGUI::Singleton<class QuickGUI::Core>::ms_Singleton" (?ms_Singleton@?$Singleton@VCore@QuickGUI@@@QuickGUI@@1PAVCore@2@A)
1>DemoApp.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::Core * QuickGUI::Singleton<class QuickGUI::Core>::ms_Singleton" (?ms_Singleton@?$Singleton@VCore@QuickGUI@@@QuickGUI@@1PAVCore@2@A)
1>MainWindow.obj : error LNK2001: unresolved external symbol "protected: static class QuickGUI::Core * QuickGUI::Singleton<class QuickGUI::Core>::ms_Singleton" (?ms_Singleton@?$Singleton@VCore@QuickGUI@@@QuickGUI@@1PAVCore@2@A)
1>MainWindow.obj : error LNK2001: unresolved external symbol "public: static class QuickGUI::ColorValue const QuickGUI::ColorValue::Blue" (?Blue@ColorValue@QuickGUI@@2V12@B)
1>MainWindow.obj : error LNK2001: unresolved external symbol "public: static class QuickGUI::ColorValue const QuickGUI::ColorValue::Red" (?Red@ColorValue@QuickGUI@@2V12@B)
1>MainWindow.obj : error LNK2001: unresolved external symbol "public: static class QuickGUI::ColorValue const QuickGUI::ColorValue::White" (?White@ColorValue@QuickGUI@@2V12@B)
1>Scene.obj : error LNK2001: unresolved external symbol "public: static class QuickGUI::Position const QuickGUI::Position::ZERO" (?ZERO@Position@QuickGUI@@2V12@B)
1>C:\Ogre\QuickGUI_10_8\QuickGUIOgreDemo\\bin\QuickGUIOgreDemo.exe : fatal error LNK1120: 9 unresolved externals



I have linked the library QuickGUI.lib (I have compiled the 'QuickGUI.lib' without problem).
By cons I don't understand because in the info of the project there initially
QuickGUI_RelWithDebInfo.lib library (what is it ? ).
Thank you for your help

kungfoomasta

08-09-2010 17:50:32

Are you using Visual Studio? Similar to Ogre, there is a "Release" build configuration, a "Debug" config, and a "RelWithDebInfo" configuration. I have only configured the "RelWithDebInfo" configuration, so any other configs may not work. The configuration is the same as building Ogre using Visual Studio.

Bpopey

08-09-2010 18:54:08

Are you using Visual Studio? Similar to Ogre, there is a "Release" build configuration, a "Debug" config, and a "RelWithDebInfo" configuration. I have only configured the "RelWithDebInfo" configuration, so any other configs may not work. The configuration is the same as building Ogre using Visual Studio.
thank you for your reply.
I only use the element generated in Release. But I will study the problem more efore.