Problems compiling OGREODE [Solved]

Problems building or running the engine, queries about how to use features etc.
Post Reply
User avatar
japito
Halfling
Posts: 77
Joined: Mon Apr 26, 2004 11:01 pm
Location: In your MBR ... (sometimes in spain)

Problems compiling OGREODE [Solved]

Post by japito »

Compilando...
OgreOdeWorld.cpp
..\..\include\OgreOdeJoint.h(46) : error C2065: 'dJointTypePlane2D' : identificador no declarado
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identificador no declarado
OgreOdeUtility.cpp
OgreOdeStepper.cpp
OgreOdeSpace.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identificador no declarado
OgreOdeMass.cpp
OgreOdeMaintainedList.cpp
OgreOdeJoint.cpp
..\..\include\OgreOdeJoint.h(46) : error C2065: 'dJointTypePlane2D' : identificador no declarado
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeJoint.cpp(676) : error C3861: 'dJointCreatePlane2D': no se encontró el identificador, ni siquiera con búsqueda dependiente de argumentos
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeJoint.cpp(682) : error C3861: 'dJointSetPlane2DXParam': no se encontró el identificador, ni siquiera con búsqueda dependiente de argumentos
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeJoint.cpp(687) : error C3861: 'dJointSetPlane2DYParam': no se encontró el identificador, ni siquiera con búsqueda dependiente de argumentos
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeJoint.cpp(692) : error C3861: 'dJointSetPlane2DAngleParam': no se encontró el identificador, ni siquiera con búsqueda dependiente de argumentos
OgreOdeGeometry.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identificador no declarado
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeGeometry.cpp(732) : error C3861: 'dCreateTerrainCallback': no se encontró el identificador, ni siquiera con búsqueda dependiente de argumentos
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeGeometry.cpp(743) : error C3861: 'dGeomTerrainCallbackPointDepth': no se encontró el identificador, ni siquiera con búsqueda dependiente de argumentos
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeGeometry.cpp(749) : error C3861: 'dGeomTerrainCallbackSetHeightCallback': no se encontró el identificador, ni siquiera con búsqueda dependiente de argumentos
OgreOdeEntityInformer.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identificador no declarado
OgreOdeEigenSolver.cpp
OgreOdeDebugObject.cpp
OgreOdeCollision.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identificador no declarado
OgreOdeBody.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identificador no declarado

Something like this:
Compiling...
OgreOdeWorld.cpp
..\..\include\OgreOdeJoint.h(46) : error C2065: 'dJointTypePlane2D' : identifier not declared
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identifier not declared
OgreOdeUtility.cpp
OgreOdeStepper.cpp
OgreOdeSpace.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identifier not declared
OgreOdeMass.cpp
OgreOdeMaintainedList.cpp
OgreOdeJoint.cpp
..\..\include\OgreOdeJoint.h(46) : error C2065: 'dJointTypePlane2D' : identifier not declared
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeJoint.cpp(676) : error C3861: 'dJointCreatePlane2D': the identifier was not found, ni siquiera con búsqueda dependiente de argumentos
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeJoint.cpp(682) : error C3861: 'dJointSetPlane2DXParam': the identifier was not found, not even with dependent search of arguments
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeJoint.cpp(687) : error C3861: 'dJointSetPlane2DYParam': the identifier was not found, not even with dependent search of arguments
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeJoint.cpp(692) : error C3861: 'dJointSetPlane2DAngleParam': the identifier was not found, not even with dependent search of arguments
OgreOdeGeometry.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identifier not declared
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeGeometry.cpp(732) : error C3861: 'dCreateTerrainCallback': the identifier was not found, not even with dependent search of arguments
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeGeometry.cpp(743) : error C3861: 'dGeomTerrainCallbackPointDepth': the identifier was not found, not even with dependent search of arguments
\OGRE\OGRE 1.0 RC1\ogrenew\OgreOde\src\OgreOdeGeometry.cpp(749) : error C3861: 'dGeomTerrainCallbackSetHeightCallback': the identifier was not found, not even with dependent search of arguments
OgreOdeEntityInformer.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identifier not declared
OgreOdeEigenSolver.cpp
OgreOdeDebugObject.cpp
OgreOdeCollision.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identifier not declared
OgreOdeBody.cpp
..\..\include\OgreOdeGeometry.h(31) : error C2065: 'dTerrainCallbackClass' : identifier not declared


Thanks in advance.
Last edited by japito on Tue Feb 22, 2005 5:29 pm, edited 1 time in total.
ummmm emmmm estoooo.....
User avatar
monster
OGRE Community Helper
OGRE Community Helper
Posts: 1098
Joined: Mon Sep 22, 2003 2:40 am
Location: Melbourne, Australia
Contact:

Post by monster »

You haven't made the changes to ODE that are detailed in the readme files.

Either do that, or undefine the variables that include these extra features.
User avatar
japito
Halfling
Posts: 77
Joined: Mon Apr 26, 2004 11:01 pm
Location: In your MBR ... (sometimes in spain)

Post by japito »

You are right ... \OgreOde\ode-0.5\contrib is the key ;)
ummmm emmmm estoooo.....
User avatar
japito
Halfling
Posts: 77
Joined: Mon Apr 26, 2004 11:01 pm
Location: In your MBR ... (sometimes in spain)

Post by japito »

All compiles without errors but...
Vinculando...
Creando biblioteca ..\..\lib\Release/OgreOde_Core.lib y objeto ..\..\lib\Release/OgreOde_Core.exp
OgreOdeGeometry.obj : error LNK2001: símbolo externo _dGeomTerrainCallbackPointDepth sin resolver
OgreOdeGeometry.obj : error LNK2001: símbolo externo _dCreateTerrainCallback sin resolver
OgreOdeGeometry.obj : error LNK2001: símbolo externo _dGeomTerrainCallbackSetHeightCallback not resolved
ode.lib(collision_kernel.obj) : error LNK2001: símbolo externo "int __cdecl dCollideTerrainCallback(struct dxGeom *,struct dxGeom *,int,struct dContactGeom *,int)" (?dCollideTerrainCallback@@YAHPAUdxGeom@@0HPAUdContactGeom@@H@Z) sin resolver
..\..\lib\Release/OgreOde_Core.dll : fatal error LNK1120: 4 externos sin resolver

Something like:
Linking...
Making Libraries ..\..\lib\Release/OgreOde_Core.lib and object ..\..\lib\Release/OgreOde_Core.exp
OgreOdeGeometry.obj : error LNK2001: extern symbol _dGeomTerrainCallbackPointDepth sin resolver
OgreOdeGeometry.obj : error LNK2001: extern symbol _dCreateTerrainCallback not resolved
OgreOdeGeometry.obj : error LNK2001: extern symbol _dGeomTerrainCallbackSetHeightCallback not resolved
ode.lib(collision_kernel.obj) : error LNK2001: extern symbol "int __cdecl dCollideTerrainCallback(struct dxGeom *,struct dxGeom *,int,struct dContactGeom *,int)" (?dCollideTerrainCallback@@YAHPAUdxGeom@@0HPAUdContactGeom@@H@Z) not resolved
..\..\lib\Release/OgreOde_Core.dll : fatal error LNK1120: 4 extern not resolved

Thanks in advance.
ummmm emmmm estoooo.....
User avatar
japito
Halfling
Posts: 77
Joined: Mon Apr 26, 2004 11:01 pm
Location: In your MBR ... (sometimes in spain)

Post by japito »

Solution: add \ode-0.5\ode\src\dTerrainCallback.cpp to your project if you are compiling width VS.
ummmm emmmm estoooo.....
User avatar
monster
OGRE Community Helper
OGRE Community Helper
Posts: 1098
Joined: Mon Sep 22, 2003 2:40 am
Location: Melbourne, Australia
Contact:

Post by monster »

Yep, or just add it to the makfile like it says in the instructions and build ODE from the command line.
Post Reply