Gohla
08-04-2009 10:28:07
I'm trying to compile MyGUI 2.2.2 against Ogre Cthuga 1.7 from the svn trunk (https://ogre.svn.sourceforge.net/svnroot/ogre/trunk/) using Visual Studio 2008. I used the MyGUI_v8.sln solution file and VS converted it to a 2008 file. The include directories and link library directories point to the new Ogre 1.7 files.
Compiling goes fine but linking does not, I get the following linker errors:
I don't really understand why these errors pop up because the copy constructor/assignment operator are not defined in Resouce and ResourceManager so it should just use a default one..?
Does anyone know how to fix these errors? I'd really like to test Ogre 1.7 but need MyGUI to be compiled with 1.7 too.
Compiling goes fine but linking does not, I get the following linker errors:
Linking...
Creating library lib\Debug\MyGUI_d.lib and object lib\Debug\MyGUI_d.exp
MyGUI_TextIterator.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_EditText.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_SimpleText.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_Font.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z) referenced in function "public: class MyGUI::FontPtr & __thiscall MyGUI::FontPtr::operator=(class Ogre::SharedPtr const &)" (??4FontPtr@MyGUI@@QAEAAV01@ABV?$SharedPtr@VResource@Ogre@@@Ogre@@@Z)
MyGUI_RenderOut.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_Gui.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_SkinManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_SubWidgetManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_WidgetManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_EditFactory.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_MenuItem.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_ClipboardManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_FontManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_ComboBox.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_Edit.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_Widget.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_ComboBoxFactory.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Resource::Resource(class Ogre::Resource const &)" (__imp_??0Resource@Ogre@@QAE@ABV01@@Z)
MyGUI_TextIterator.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_EditText.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_SimpleText.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_Font.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_RenderOut.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_Gui.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_SkinManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_SubWidgetManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_WidgetManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_EditFactory.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_MenuItem.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_ClipboardManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_FontManager.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_ComboBox.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z) referenced in function "public: class MyGUI::Font & __thiscall MyGUI::Font::operator=(class MyGUI::Font const &)" (??4Font@MyGUI@@QAEAAV01@ABV01@@Z)
MyGUI_Edit.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_Widget.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_ComboBoxFactory.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::Resource & __thiscall Ogre::Resource::operator=(class Ogre::Resource const &)" (__imp_??4Resource@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_RenderOut.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::ResourceManager::ResourceManager(class Ogre::ResourceManager const &)" (__imp_??0ResourceManager@Ogre@@QAE@ABV01@@Z)
MyGUI_FontManager.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::ResourceManager::ResourceManager(class Ogre::ResourceManager const &)" (__imp_??0ResourceManager@Ogre@@QAE@ABV01@@Z) referenced in function "public: __thiscall MyGUI::FontManager::FontManager(class MyGUI::FontManager const &)" (??0FontManager@MyGUI@@QAE@ABV01@@Z)
MyGUI_Gui.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::ResourceManager::ResourceManager(class Ogre::ResourceManager const &)" (__imp_??0ResourceManager@Ogre@@QAE@ABV01@@Z)
MyGUI_EditText.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::ResourceManager::ResourceManager(class Ogre::ResourceManager const &)" (__imp_??0ResourceManager@Ogre@@QAE@ABV01@@Z)
MyGUI_SimpleText.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::ResourceManager::ResourceManager(class Ogre::ResourceManager const &)" (__imp_??0ResourceManager@Ogre@@QAE@ABV01@@Z)
MyGUI_RenderOut.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::ResourceManager & __thiscall Ogre::ResourceManager::operator=(class Ogre::ResourceManager const &)" (__imp_??4ResourceManager@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_FontManager.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class Ogre::ResourceManager & __thiscall Ogre::ResourceManager::operator=(class Ogre::ResourceManager const &)" (__imp_??4ResourceManager@Ogre@@QAEAAV01@ABV01@@Z) referenced in function "public: class MyGUI::FontManager & __thiscall MyGUI::FontManager::operator=(class MyGUI::FontManager const &)" (??4FontManager@MyGUI@@QAEAAV01@ABV01@@Z)
MyGUI_Gui.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::ResourceManager & __thiscall Ogre::ResourceManager::operator=(class Ogre::ResourceManager const &)" (__imp_??4ResourceManager@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_EditText.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::ResourceManager & __thiscall Ogre::ResourceManager::operator=(class Ogre::ResourceManager const &)" (__imp_??4ResourceManager@Ogre@@QAEAAV01@ABV01@@Z)
MyGUI_SimpleText.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class Ogre::ResourceManager & __thiscall Ogre::ResourceManager::operator=(class Ogre::ResourceManager const &)" (__imp_??4ResourceManager@Ogre@@QAEAAV01@ABV01@@Z)
../Shared/Debug\MyGUI_d.dll : fatal error LNK1120: 4 unresolved externals
I don't really understand why these errors pop up because the copy constructor/assignment operator are not defined in Resouce and ResourceManager so it should just use a default one..?
Does anyone know how to fix these errors? I'd really like to test Ogre 1.7 but need MyGUI to be compiled with 1.7 too.