Compilation problem

DjStunt

11-03-2009 22:54:13

Hi all,

I'm currently trying to compile the latest version of OgreODE from the svn, combined with the latest version of ogre also from the SVN. And i'm using Ode-0.11.

I've tried using all the different possible lib files from ode (i had to modify the current additional dependancy from ode.lib to ode_single.lib or ode_double.lib) , and i've tried modifying the code mentioned in the tutorial but the same unresolved externals keep cropping up:


1> Creating library ..\..\lib\Release/OgreOde_Core.lib and object ..\..\lib\Release/OgreOde_Core.exp
1>OgreOdeEntityInformer.obj : error LNK2001: unresolved external symbol "public: class OgreOde::TriangleMeshDataPtr __thiscall OgreOde::TriangleMeshDataManager::getTriangleMeshData(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class Ogre::Vector3)" (?getTriangleMeshData@TriangleMeshDataManager@OgreOde@@QAE?AVTriangleMeshDataPtr@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VVector3@Ogre@@@Z)
1>OgreOdeEntityInformer.obj : error LNK2001: unresolved external symbol "public: static class OgreOde::TriangleMeshDataManager & __cdecl OgreOde::TriangleMeshDataManager::getSingleton(void)" (?getSingleton@TriangleMeshDataManager@OgreOde@@SAAAV12@XZ)
1>OgreOdeEntityInformer.obj : error LNK2001: unresolved external symbol "public: __thiscall OgreOde::TriangleMeshData::TriangleMeshData(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class Ogre::Vector3,class Ogre::Vector3 const *,unsigned int,unsigned int const *,unsigned int)" (??0TriangleMeshData@OgreOde@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VVector3@Ogre@@PBV45@IPBII@Z)
1>OgreOdeEntityInformer.obj : error LNK2001: unresolved external symbol "public: void __thiscall OgreOde::TriangleMeshDataManager::addTriangleMeshData(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class OgreOde::TriangleMeshDataPtr,class Ogre::Vector3)" (?addTriangleMeshData@TriangleMeshDataManager@OgreOde@@QAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VTriangleMeshDataPtr@2@VVector3@Ogre@@@Z)
1>OgreOdePrecompiledHeaders.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall OgreOde::TriangleMeshData::~TriangleMeshData(void)" (??1TriangleMeshData@OgreOde@@UAE@XZ)
1>..\..\lib\Release/OgreOde_Core.dll : fatal error LNK1120: 5 unresolved externals


I'm using MS Visual Studio 2005 and to re-iterate:

Ode-0.11
Latest OgreODE from addons SVN.
Latest Ogre from SVN.

Any help appreciated!

FietsPomp

23-03-2009 22:55:29

I had the same problem. Its fixed by adding the OgreOdeTriangleMeshDataManager.cpp and OgreOdeTriangleMeshData.cpp to the solution.
They are located in the /src