tgraupmann2
15-11-2007 06:29:02
I updated to the latest SVN version of ODE. ODE builds perfectly.
I updated to the latest version of OgreOde.
When compiling OgreOde I get the error:
1>c:\svn_root\sector13_ogre\dependencies2005\ogreode\src\ogreodegeometry.cpp(881) : error C2664: 'dGeomTriMeshDataBuildSimple' : cannot convert parameter 4 from 'int *' to 'const dTriIndex *'
If you get the latest CVS checkout of OgreODE, don't you see the same issue?
tgraupmann2
16-11-2007 04:40:08
Since OgreODE uses an environment variable for the ODE path:
$(ODE_HOME)\include
Are you sure that OgreOde is truely built against the latest SVN version of ODE?
Maybe your environment variable is out of date???
rewb0rn
16-11-2007 12:53:58
err, you answer yourself now?^^
Aquatix
16-11-2007 15:07:43
Heh, it's still better, then getting no answer at all!
dermont
16-11-2007 15:23:06
The dTriIndex problem appears to be related to a recent update to ode which hasn't found it's way into OgreOde yet:
http://opende.svn.sourceforge.net/viewv ... 02&r2=1307
You could either try checking out ode cvs prior to Sun Nov 11, use the ODE 0.9.0 code release or hack the ode/OgreOde code to incorporate the above change. For me OgreOde builds and runs OK with ode 0.9.0.
tgraupmann2
16-11-2007 15:35:49
dermont
16-11-2007 19:39:37
ODE has since turned off CVS in their project.
Yes, sorry I meant svn.
Aquatix
16-11-2007 20:27:55
tgraupmann2
17-11-2007 06:14:13
When I use ODE 0.9, I can see that OgreOde builds.
The problem is that Ogre Reference App Layer doesn't build with ODE 0.9.
1>------ Build started: Project: ReferenceAppLayer, Configuration: Debug Win32 ------
1>Linking...
1>msvcprtd.lib(MSVCP80D.dll) : error LNK2005: "public: __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z) already defined in ode.lib(convex.obj)
1>msvcprtd.lib(MSVCP80D.dll) : error LNK2005: "public: __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::~basic_string<char,struct std::char_traits<char>,class std::allocator<char> >(void)" (??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ) already defined in ode.lib(convex.obj)
1>msvcprtd.lib(MSVCP80D.dll) : error LNK2005: "public: __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >(char const *)" (??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z) already defined in ode.lib(convex.obj)
1>msvcprtd.lib(MSVCP80D.dll) : error LNK2005: "public: char const * __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::c_str(void)const " (?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ) already defined in ode.lib(convex.obj)
1>LIBCMTD.lib(dbgheap.obj) : error LNK2005: _malloc already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(dbgheap.obj) : error LNK2005: __malloc_dbg already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(dbgheap.obj) : error LNK2005: _realloc already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(dbgheap.obj) : error LNK2005: _free already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(dbgheap.obj) : error LNK2005: __free_dbg already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(dbgheap.obj) : error LNK2005: __CrtSetCheckCount already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(crt0dat.obj) : error LNK2005: _exit already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(crt0dat.obj) : error LNK2005: __amsg_exit already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(crt0dat.obj) : error LNK2005: __initterm_e already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(fflush.obj) : error LNK2005: _fflush already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(dbghook.obj) : error LNK2005: __crt_debugger_hook already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(invarg.obj) : error LNK2005: __invalid_parameter already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(tidtable.obj) : error LNK2005: __encode_pointer already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(tidtable.obj) : error LNK2005: __encoded_null already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(tidtable.obj) : error LNK2005: __decode_pointer already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(crt0init.obj) : error LNK2005: ___xi_a already defined in MSVCRTD.lib(cinitexe.obj)
1>LIBCMTD.lib(crt0init.obj) : error LNK2005: ___xi_z already defined in MSVCRTD.lib(cinitexe.obj)
1>LIBCMTD.lib(crt0init.obj) : error LNK2005: ___xc_a already defined in MSVCRTD.lib(cinitexe.obj)
1>LIBCMTD.lib(crt0init.obj) : error LNK2005: ___xc_z already defined in MSVCRTD.lib(cinitexe.obj)
1>LIBCMTD.lib(hooks.obj) : error LNK2005: "void __cdecl terminate(void)" (?terminate@@YAXXZ) already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(winxfltr.obj) : error LNK2005: ___CppXcptFilter already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(mlock.obj) : error LNK2005: __lock already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(mlock.obj) : error LNK2005: __unlock already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(dbgrptw.obj) : error LNK2005: __CrtDbgReportW already defined in MSVCRTD.lib(MSVCR80D.dll)
1>LIBCMTD.lib(printf.obj) : error LNK2005: _printf already defined in MSVCRTD.lib(MSVCR80D.dll)
1> Creating library ..\..\..\lib/ReferenceAppLayer_d.lib and object ..\..\..\lib/ReferenceAppLayer_d.exp
1>LINK : warning LNK4098: defaultlib 'MSVCRTD' conflicts with use of other libs; use /NODEFAULTLIB:library
1>LINK : warning LNK4098: defaultlib 'LIBCMTD' conflicts with use of other libs; use /NODEFAULTLIB:library
1>ode.lib(convex.obj) : error LNK2019: unresolved external symbol "public: void __thiscall std::_String_base::_Xran(void)const " (?_Xran@_String_base@std@@QBEXXZ) referenced in function "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > & __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::assign(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,unsigned int,unsigned int)" (?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z)
1>ode.lib(convex.obj) : error LNK2019: unresolved external symbol "public: void __thiscall std::_String_base::_Xlen(void)const " (?_Xlen@_String_base@std@@QBEXXZ) referenced in function "protected: bool __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::_Grow(unsigned int,bool)" (?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAE_NI_N@Z)
1>LIBCMTD.lib(crt0.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
1>..\..\..\lib/ReferenceAppLayer_d.dll : fatal error LNK1120: 3 unresolved externals
1>Build log was saved at "file://c:\SVN_ROOT\Sector13_Ogre\dependencies2005\ogrenew\ReferenceApplication\ReferenceAppLayer\obj\Debug\BuildLog.htm"
1>ReferenceAppLayer - 33 error(s), 2 warning(s)
========== Build: 0 succeeded, 1 failed, 1 up-to-date, 0 skipped ==========
Ogre reference app layer does build with the latest SVN version of ODE.
tgraupmann2
17-11-2007 21:03:40
The dTriIndex problem appears to be related to a recent update to ode which hasn't found it's way into OgreOde yet:
http://opende.svn.sourceforge.net/viewv ... 02&r2=1307
You could either try checking out ode cvs prior to Sun Nov 11, use the ODE 0.9.0 code release or hack the ode/OgreOde code to incorporate the above change. For me OgreOde builds and runs OK with ode 0.9.0.
That would be SVN revision 1306.
tgraupmann2
17-11-2007 21:17:51
Ode SVN revision 1306 worked great. I don't know why I didn't see that before. I guess I was too much into a rush.