Bren
03-03-2006 23:11:15
Trying to build Plugin_PagingLandScapeSceneManager2, I'm having the same problem reported in this thread: http://www.ogre3d.org/phpBB2addons/viewtopic.php?t=214.
It's unclear though how rweiss resolved the problem.
I'm building PLSM2 from http://tuan.kuranes.free.fr/Ogre.html against OGRE 1.0.7 Stable (Azathoth).
I am linking to OgreMain_d.lib/OgreMain.lib.
Ogre builds fine. I even made an edit to OgreIteratorWrappers.h and rebuilt to be sure this was getting into the lib, but it still refuses to link.
I'm stumped. Any help?
Also, as you can see, I also get the _WinMain@16 error reported here: http://www.ogre3d.org/phpBB2addons/viewtopic.php?t=573
EDIT:
tuan, in that other thread you say "plsm2 SDK is ogre SDK compatible and Azathoth CVS compatible."
Now, "ogre SDK" implies, well, the Ogre SDK from http://www.ogre3d.org/index.php?option= ... tcat&cat=1 which doesn't have an OgreMain folder, so PLSM2 "out of the box" won't build with the Ogre SDK, without major changes to the include/link paths.
Still, I would guess by "Ogre SDK" you mean 1.0.7 stable (not CVS), but because of this MapIterator problem, it doesn't seem compatible with that either.
Does this mean PLSM2 is, at the moment, only compatible with Azathoth CVS???
Also, the solution file includes the MapEditor project, which is not included in the archive.
It's unclear though how rweiss resolved the problem.
I'm building PLSM2 from http://tuan.kuranes.free.fr/Ogre.html against OGRE 1.0.7 Stable (Azathoth).
------ Build started: Project: Plugin_PagingLandScapeSceneManager2, Configuration: Release Win32 ------
Linking...
Creating library ..\bin\Release/Plugin_PagingLandScapeSceneManager2.lib and object ..\bin\Release/Plugin_PagingLandScapeSceneManager2.exp
OgrePagingLandScapeOctreeNode.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::MapIterator<class stdext::hash_map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class Ogre::Node *,class stdext::hash_compare<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,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 Ogre::Node *> > > > __thiscall Ogre::Node::getChildIterator(void)" (__imp_?getChildIterator@Node@Ogre@@UAE?AV?$MapIterator@V?$hash_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVNode@Ogre@@V?$hash_compare@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@stdext@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVNode@Ogre@@@std@@@2@@stdext@@@2@XZ)
OgrePagingLandScapeOctreeNode.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::ConstMapIterator<class stdext::hash_map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class Ogre::Node *,class stdext::hash_compare<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,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 Ogre::Node *> > > > __thiscall Ogre::Node::getChildIterator(void)const " (__imp_?getChildIterator@Node@Ogre@@UBE?AV?$ConstMapIterator@V?$hash_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVNode@Ogre@@V?$hash_compare@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@stdext@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVNode@Ogre@@@std@@@2@@stdext@@@2@XZ)
OgrePagingLandScapeOctreeNode.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::MapIterator<class stdext::hash_map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class Ogre::MovableObject *,class stdext::hash_compare<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,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 Ogre::MovableObject *> > > > __thiscall Ogre::SceneNode::getAttachedObjectIterator(void)" (__imp_?getAttachedObjectIterator@SceneNode@Ogre@@UAE?AV?$MapIterator@V?$hash_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVMovableObject@Ogre@@V?$hash_compare@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@stdext@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVMovableObject@Ogre@@@std@@@2@@stdext@@@2@XZ)
OgrePagingLandScapeOctreeNode.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::ConstMapIterator<class stdext::hash_map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class Ogre::MovableObject *,class stdext::hash_compare<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,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 Ogre::MovableObject *> > > > __thiscall Ogre::SceneNode::getAttachedObjectIterator(void)const " (__imp_?getAttachedObjectIterator@SceneNode@Ogre@@UBE?AV?$ConstMapIterator@V?$hash_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVMovableObject@Ogre@@V?$hash_compare@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@stdext@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVMovableObject@Ogre@@@std@@@2@@stdext@@@2@XZ)
..\bin\Release/Plugin_PagingLandScapeSceneManager2.dll : fatal error LNK1120: 4 unresolved externals
Build log was saved at "file://c:\Project\Ogre\ogrenew\PlugIns\PagingLandScape2\obj\Release\BuildLog.htm"
Plugin_PagingLandScapeSceneManager2 - 5 error(s), 0 warning(s)
------ Build started: Project: Plugin_PagingLandScapeSceneManager2, Configuration: Debug Win32 ------
Linking...
Creating library ..\bin\Debug/Plugin_PagingLandScapeSceneManager2.lib and object ..\bin\Debug/Plugin_PagingLandScapeSceneManager2.exp
OgrePagingLandScapeOctreeNode.obj : error LNK2001: unresolved external symbol "public: virtual class Ogre::MapIterator<class stdext::hash_map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class Ogre::MovableObject *,class stdext::hash_compare<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,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 Ogre::MovableObject *> > > > __thiscall Ogre::SceneNode::getAttachedObjectIterator(void)" (?getAttachedObjectIterator@SceneNode@Ogre@@UAE?AV?$MapIterator@V?$hash_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVMovableObject@Ogre@@V?$hash_compare@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@stdext@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVMovableObject@Ogre@@@std@@@2@@stdext@@@2@XZ)
OgrePagingLandScapeOctreeNode.obj : error LNK2001: unresolved external symbol "public: virtual class Ogre::ConstMapIterator<class stdext::hash_map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class Ogre::MovableObject *,class stdext::hash_compare<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,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 Ogre::MovableObject *> > > > __thiscall Ogre::SceneNode::getAttachedObjectIterator(void)const " (?getAttachedObjectIterator@SceneNode@Ogre@@UBE?AV?$ConstMapIterator@V?$hash_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVMovableObject@Ogre@@V?$hash_compare@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@stdext@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVMovableObject@Ogre@@@std@@@2@@stdext@@@2@XZ)
OgrePagingLandScapeOctreeNode.obj : error LNK2001: unresolved external symbol "public: virtual class Ogre::MapIterator<class stdext::hash_map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class Ogre::Node *,class stdext::hash_compare<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,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 Ogre::Node *> > > > __thiscall Ogre::Node::getChildIterator(void)" (?getChildIterator@Node@Ogre@@UAE?AV?$MapIterator@V?$hash_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVNode@Ogre@@V?$hash_compare@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@stdext@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVNode@Ogre@@@std@@@2@@stdext@@@2@XZ)
OgrePagingLandScapeOctreeNode.obj : error LNK2001: unresolved external symbol "public: virtual class Ogre::ConstMapIterator<class stdext::hash_map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class Ogre::Node *,class stdext::hash_compare<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,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 Ogre::Node *> > > > __thiscall Ogre::Node::getChildIterator(void)const " (?getChildIterator@Node@Ogre@@UBE?AV?$ConstMapIterator@V?$hash_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVNode@Ogre@@V?$hash_compare@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@stdext@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVNode@Ogre@@@std@@@2@@stdext@@@2@XZ)
..\bin\Debug/Plugin_PagingLandScapeSceneManager2.dll : fatal error LNK1120: 4 unresolved externals
Build log was saved at "file://c:\Project\Ogre\ogrenew\PlugIns\PagingLandScape2\obj\Debug\BuildLog.htm"
Plugin_PagingLandScapeSceneManager2 - 5 error(s), 0 warning(s)
------ Build started: Project: Demo_PagingLandScape2, Configuration: Release Win32 ------
Demo_PagingLandScape2 - up-to-date.
------ Build started: Project: Demo_PagingLandScape2, Configuration: Debug Win32 ------
Linking...
MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol _WinMain@16 referenced in function _WinMainCRTStartup
..\bin\Debug/Demo_PagingLandScape2.exe : fatal error LNK1120: 1 unresolved externals
Build log was saved at "file://c:\Project\Ogre\ogrenew\Samples\PagingLandScape2\obj\Debug\BuildLog.htm"
Demo_PagingLandScape2 - 2 error(s), 0 warning(s)
I am linking to OgreMain_d.lib/OgreMain.lib.
Ogre builds fine. I even made an edit to OgreIteratorWrappers.h and rebuilt to be sure this was getting into the lib, but it still refuses to link.
I'm stumped. Any help?
Also, as you can see, I also get the _WinMain@16 error reported here: http://www.ogre3d.org/phpBB2addons/viewtopic.php?t=573
EDIT:
tuan, in that other thread you say "plsm2 SDK is ogre SDK compatible and Azathoth CVS compatible."
Now, "ogre SDK" implies, well, the Ogre SDK from http://www.ogre3d.org/index.php?option= ... tcat&cat=1 which doesn't have an OgreMain folder, so PLSM2 "out of the box" won't build with the Ogre SDK, without major changes to the include/link paths.
Still, I would guess by "Ogre SDK" you mean 1.0.7 stable (not CVS), but because of this MapIterator problem, it doesn't seem compatible with that either.
Does this mean PLSM2 is, at the moment, only compatible with Azathoth CVS???
Also, the solution file includes the MapEditor project, which is not included in the archive.