OgreBullet Compile Error

Moustique

04-08-2010 09:11:47

Hello all,
I am a beginner in OgreBullet.
I have downloaded OgreBullet_SDK, and when I compiled it, I met an error:

error C2440: 'static_cast' : cannot convert from 'btTypedConstraint *' to 'btRaycastVehicle *'

And the error happened in the area of following code:

btRaycastVehicle *getBulletVehicle()
{
return static_cast <btRaycastVehicle*> (mConstraint);
};


Thank you for your kind help and reply.

Regards

----
zwang

Moustique

04-08-2010 09:35:49

Hello all,
I add something.
I compile OgreBullet_SDK, since I want to get the Libs, for example, OgreBulletCollisions_d.lib, OgreBulletDynamics_d.lib, etc.
because when I set-up applications based on OgreBullet, they need those libs.

Thank you !

---
zwang

Moustique

05-08-2010 14:08:26

Hello all,
I found a previous post on this topic,
viewtopic.php?f=12&t=12314
It seems that the solution is: to grab the OB source from SVN.

But I did not sucessed~

Thank you for your reply.

-------
zwang

Moustique

17-08-2010 13:30:44

Hello all,
Anyone help?


---
moustique

jonathanblacknight

17-08-2010 13:39:58

what OS, bullet version and ogre version you use?

Moustique

17-08-2010 14:19:58

what OS, bullet version and ogre version you use?

Hi
thank you for your reply.

I am working on windows, Ogre1.65 and Bullet 2.76.

I downloaded OgreBullet_SDK, and installed it.
But When I compiled it, I met errors as described in above postes.


Hoping for your help and hints.

Regards.
----
Moustique

jonathanblacknight

17-08-2010 20:54:44

Check in Visual Studio or in your IDE if the include files and libraries directories is setted correctly, check the bullet directories (see ogre bullet wiki)...

if everything is correct can you try to compile with ogre 1.7.1

Moustique

19-08-2010 14:29:28

Check in Visual Studio or in your IDE if the include files and libraries directories is setted correctly, check the bullet directories (see ogre bullet wiki)...

if everything is correct can you try to compile with ogre 1.7.1

hello
Yes, I correctly set up the libs and headers files. The errors with Ogre 1.65 still exist (errors above!)

I followed your advice and tried Ogre1.71. Unfornately, another error is coming:
UserDefinedObject is not a member of Ogre,

It seems that userdefinedObject is not defined in Ogre1.71. It is true when I open Ogre.h in Ogre1.71 headers files.

In fact, I download OgreBullet SDK from: http://www.ogre3d.org/forums/viewtopic.php?t=29034
I am not sure whether there is newer version of OgreBullet SDK.

I notice that, there are some patches for OgreBullet : http://sourceforge.net/tracker/?group_i ... id=1064241

I download "OgreBullet patches for Ogre1.71 compability", put it my working dir of project OgreBullet_SDK, I failed also.


thank you for your reply.

---
moustique

Moustique

19-08-2010 17:17:46

Hello again,
I download OgreBullet code from SVN and the compilation of OgreCollisions.lib and OgreDynamics.lib are successful.

But when I compile the Dynamics_Demos, I met a lot of Link errors,

Linking...
1> Creating library ..\..\..\..\bin\debug\OgreBulletDynamicsDemo_d.lib and object ..\..\..\..\bin\debug\OgreBulletDynamicsDemo_d.exp
1>Terrain_Demo.obj : error LNK2019: unresolved external symbol "public: __thiscall btHeightfieldTerrainShape::btHeightfieldTerrainShape(int,int,void *,float,int,bool,bool)" (??0btHeightfieldTerrainShape@@QAE@HHPAXMH_N1@Z) referenced in function "public: __thiscall OgreBulletCollisions::HeightmapCollisionShape::HeightmapCollisionShape(int,int,class Ogre::Vector3 &,float *,bool)" (??0HeightmapCollisionShape@OgreBulletCollisions@@QAE@HHAAVVector3@Ogre@@PAM_N@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRaycastVehicle.obj) : error LNK2019: unresolved external symbol "public: struct btWheelInfo & __thiscall btRaycastVehicle::addWheel(class btVector3 const &,class btVector3 const &,class btVector3 const &,float,float,class btRaycastVehicle::btVehicleTuning const &,bool)" (?addWheel@btRaycastVehicle@@QAEAAUbtWheelInfo@@ABVbtVector3@@00MMABVbtVehicleTuning@1@_N@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RaycastVehicle::addWheel(class Ogre::SceneNode *,class Ogre::Vector3 const &,class Ogre::Vector3 const &,class Ogre::Vector3 const &,float,float,bool,float,float)" (?addWheel@RaycastVehicle@OgreBulletDynamics@@QAEXPAVSceneNode@Ogre@@ABVVector3@4@11MM_NMM@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRaycastVehicle.obj) : error LNK2019: unresolved external symbol "public: void __thiscall btRaycastVehicle::applyEngineForce(float,int)" (?applyEngineForce@btRaycastVehicle@@QAEXMH@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RaycastVehicle::applyEngineForce(float,int)" (?applyEngineForce@RaycastVehicle@OgreBulletDynamics@@QAEXMH@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRaycastVehicle.obj) : error LNK2019: unresolved external symbol "public: void __thiscall btRaycastVehicle::setSteeringValue(float,int)" (?setSteeringValue@btRaycastVehicle@@QAEXMH@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RaycastVehicle::setSteeringValue(float,int)" (?setSteeringValue@RaycastVehicle@OgreBulletDynamics@@QAEXMH@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRigidBody.obj) : error LNK2019: unresolved external symbol "public: __thiscall btRigidBody::btRigidBody(float,class btMotionState *,class btCollisionShape *,class btVector3 const &)" (??0btRigidBody@@QAE@MPAVbtMotionState@@PAVbtCollisionShape@@ABVbtVector3@@@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RigidBody::setShape(class Ogre::SceneNode *,class OgreBulletCollisions::CollisionShape *,float,float,float,class Ogre::Vector3 const &,class Ogre::Quaternion const &)" (?setShape@RigidBody@OgreBulletDynamics@@QAEXPAVSceneNode@Ogre@@PAVCollisionShape@OgreBulletCollisions@@MMMABVVector3@4@ABVQuaternion@4@@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRigidBody.obj) : error LNK2019: unresolved external symbol "public: void __thiscall btRigidBody::setDamping(float,float)" (?setDamping@btRigidBody@@QAEXMM@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RigidBody::setDamping(float,float)" (?setDamping@RigidBody@OgreBulletDynamics@@QAEXMM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsBoxShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btCollisionShape::getBoundingSphere(class btVector3 &,float &)const " (?getBoundingSphere@btCollisionShape@@UBEXAAVbtVector3@@AAM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsSphereShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btCollisionShape::getBoundingSphere(class btVector3 &,float &)const " (?getBoundingSphere@btCollisionShape@@UBEXAAVbtVector3@@AAM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btCollisionShape::getBoundingSphere(class btVector3 &,float &)const " (?getBoundingSphere@btCollisionShape@@UBEXAAVbtVector3@@AAM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsBoxShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getAngularMotionDisc(void)const " (?getAngularMotionDisc@btCollisionShape@@UBEMXZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsSphereShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getAngularMotionDisc(void)const " (?getAngularMotionDisc@btCollisionShape@@UBEMXZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getAngularMotionDisc(void)const " (?getAngularMotionDisc@btCollisionShape@@UBEMXZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsBoxShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getContactBreakingThreshold(float)const " (?getContactBreakingThreshold@btCollisionShape@@UBEMM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsSphereShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getContactBreakingThreshold(float)const " (?getContactBreakingThreshold@btCollisionShape@@UBEMM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getContactBreakingThreshold(float)const " (?getContactBreakingThreshold@btCollisionShape@@UBEMM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsBoxShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btBoxShape::calculateLocalInertia(float,class btVector3 &)const " (?calculateLocalInertia@btBoxShape@@UBEXMAAVbtVector3@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsSphereShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btSphereShape::calculateLocalInertia(float,class btVector3 &)const " (?calculateLocalInertia@btSphereShape@@UBEXMAAVbtVector3@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsConeShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btConeShapeZ::btConeShapeZ(float,float)" (??0btConeShapeZ@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::ConeCollisionShape::ConeCollisionShape(float,float,class Ogre::Vector3 const &)" (??0ConeCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsConeShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btConeShapeX::btConeShapeX(float,float)" (??0btConeShapeX@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::ConeCollisionShape::ConeCollisionShape(float,float,class Ogre::Vector3 const &)" (??0ConeCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsConeShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btConeShape::btConeShape(float,float)" (??0btConeShape@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::ConeCollisionShape::ConeCollisionShape(float,float,class Ogre::Vector3 const &)" (??0ConeCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsMeshToShapeConverter.obj) : error LNK2019: unresolved external symbol "public: bool __thiscall btShapeHull::buildHull(float)" (?buildHull@btShapeHull@@QAE_NM@Z) referenced in function "public: class OgreBulletCollisions::ConvexHullCollisionShape * __thiscall OgreBulletCollisions::VertexIndexToShape::createConvex(void)" (?createConvex@VertexIndexToShape@OgreBulletCollisions@@QAEPAVConvexHullCollisionShape@2@XZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsMeshToShapeConverter.obj) : error LNK2019: unresolved external symbol "public: __thiscall btConvexHullShape::btConvexHullShape(float const *,int,int)" (??0btConvexHullShape@@QAE@PBMHH@Z) referenced in function "public: class OgreBulletCollisions::ConvexHullCollisionShape * __thiscall OgreBulletCollisions::VertexIndexToShape::createConvex(void)" (?createConvex@VertexIndexToShape@OgreBulletCollisions@@QAEPAVConvexHullCollisionShape@2@XZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsConvexHullShape.obj) : error LNK2001: unresolved external symbol "public: __thiscall btConvexHullShape::btConvexHullShape(float const *,int,int)" (??0btConvexHullShape@@QAE@PBMHH@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsStaticPlaneShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btStaticPlaneShape::btStaticPlaneShape(class btVector3 const &,float)" (??0btStaticPlaneShape@@QAE@ABVbtVector3@@M@Z) referenced in function "public: __thiscall OgreBulletCollisions::StaticPlaneCollisionShape::StaticPlaneCollisionShape(class Ogre::Vector3,float)" (??0StaticPlaneCollisionShape@OgreBulletCollisions@@QAE@VVector3@Ogre@@M@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btGImpactMeshShape::calculateLocalInertia(float,class btVector3 &)const " (?calculateLocalInertia@btGImpactMeshShape@@UBEXMAAVbtVector3@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btGImpactMeshShapePart::calculateLocalInertia(float,class btVector3 &)const " (?calculateLocalInertia@btGImpactMeshShapePart@@UBEXMAAVbtVector3@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsCapsuleShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btCapsuleShapeZ::btCapsuleShapeZ(float,float)" (??0btCapsuleShapeZ@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::CapsuleCollisionShape::CapsuleCollisionShape(float,float,class Ogre::Vector3 const &)" (??0CapsuleCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsCapsuleShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btCapsuleShape::btCapsuleShape(float,float)" (??0btCapsuleShape@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::CapsuleCollisionShape::CapsuleCollisionShape(float,float,class Ogre::Vector3 const &)" (??0CapsuleCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsCapsuleShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btCapsuleShapeX::btCapsuleShapeX(float,float)" (??0btCapsuleShapeX@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::CapsuleCollisionShape::CapsuleCollisionShape(float,float,class Ogre::Vector3 const &)" (??0CapsuleCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>..\..\..\..\bin\debug\OgreBulletDynamicsDemo_d.exe : fatal error LNK1120: 22 unresolved externals

***************************************************
I am lost, and It seems that these errors are related with Bullet, since those unsolved externals are pre-indexed by "bt-",

Thank you in advance for your help.

---
moustique

Fish

25-08-2010 23:07:04

Do not use the Ogre Bullet SDK it is outdated. See: viewtopic.php?f=12&t=4155 for how to get the newest source.

- Fish

TheKnyazz

29-07-2011 10:05:45

Hello again,
I download OgreBullet code from SVN and the compilation of OgreCollisions.lib and OgreDynamics.lib are successful.

But when I compile the Dynamics_Demos, I met a lot of Link errors,

Linking...
1> Creating library ..\..\..\..\bin\debug\OgreBulletDynamicsDemo_d.lib and object ..\..\..\..\bin\debug\OgreBulletDynamicsDemo_d.exp
1>Terrain_Demo.obj : error LNK2019: unresolved external symbol "public: __thiscall btHeightfieldTerrainShape::btHeightfieldTerrainShape(int,int,void *,float,int,bool,bool)" (??0btHeightfieldTerrainShape@@QAE@HHPAXMH_N1@Z) referenced in function "public: __thiscall OgreBulletCollisions::HeightmapCollisionShape::HeightmapCollisionShape(int,int,class Ogre::Vector3 &,float *,bool)" (??0HeightmapCollisionShape@OgreBulletCollisions@@QAE@HHAAVVector3@Ogre@@PAM_N@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRaycastVehicle.obj) : error LNK2019: unresolved external symbol "public: struct btWheelInfo & __thiscall btRaycastVehicle::addWheel(class btVector3 const &,class btVector3 const &,class btVector3 const &,float,float,class btRaycastVehicle::btVehicleTuning const &,bool)" (?addWheel@btRaycastVehicle@@QAEAAUbtWheelInfo@@ABVbtVector3@@00MMABVbtVehicleTuning@1@_N@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RaycastVehicle::addWheel(class Ogre::SceneNode *,class Ogre::Vector3 const &,class Ogre::Vector3 const &,class Ogre::Vector3 const &,float,float,bool,float,float)" (?addWheel@RaycastVehicle@OgreBulletDynamics@@QAEXPAVSceneNode@Ogre@@ABVVector3@4@11MM_NMM@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRaycastVehicle.obj) : error LNK2019: unresolved external symbol "public: void __thiscall btRaycastVehicle::applyEngineForce(float,int)" (?applyEngineForce@btRaycastVehicle@@QAEXMH@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RaycastVehicle::applyEngineForce(float,int)" (?applyEngineForce@RaycastVehicle@OgreBulletDynamics@@QAEXMH@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRaycastVehicle.obj) : error LNK2019: unresolved external symbol "public: void __thiscall btRaycastVehicle::setSteeringValue(float,int)" (?setSteeringValue@btRaycastVehicle@@QAEXMH@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RaycastVehicle::setSteeringValue(float,int)" (?setSteeringValue@RaycastVehicle@OgreBulletDynamics@@QAEXMH@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRigidBody.obj) : error LNK2019: unresolved external symbol "public: __thiscall btRigidBody::btRigidBody(float,class btMotionState *,class btCollisionShape *,class btVector3 const &)" (??0btRigidBody@@QAE@MPAVbtMotionState@@PAVbtCollisionShape@@ABVbtVector3@@@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RigidBody::setShape(class Ogre::SceneNode *,class OgreBulletCollisions::CollisionShape *,float,float,float,class Ogre::Vector3 const &,class Ogre::Quaternion const &)" (?setShape@RigidBody@OgreBulletDynamics@@QAEXPAVSceneNode@Ogre@@PAVCollisionShape@OgreBulletCollisions@@MMMABVVector3@4@ABVQuaternion@4@@Z)
1>OgreBulletDynamics_d.lib(OgreBulletDynamicsRigidBody.obj) : error LNK2019: unresolved external symbol "public: void __thiscall btRigidBody::setDamping(float,float)" (?setDamping@btRigidBody@@QAEXMM@Z) referenced in function "public: void __thiscall OgreBulletDynamics::RigidBody::setDamping(float,float)" (?setDamping@RigidBody@OgreBulletDynamics@@QAEXMM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsBoxShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btCollisionShape::getBoundingSphere(class btVector3 &,float &)const " (?getBoundingSphere@btCollisionShape@@UBEXAAVbtVector3@@AAM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsSphereShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btCollisionShape::getBoundingSphere(class btVector3 &,float &)const " (?getBoundingSphere@btCollisionShape@@UBEXAAVbtVector3@@AAM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btCollisionShape::getBoundingSphere(class btVector3 &,float &)const " (?getBoundingSphere@btCollisionShape@@UBEXAAVbtVector3@@AAM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsBoxShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getAngularMotionDisc(void)const " (?getAngularMotionDisc@btCollisionShape@@UBEMXZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsSphereShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getAngularMotionDisc(void)const " (?getAngularMotionDisc@btCollisionShape@@UBEMXZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getAngularMotionDisc(void)const " (?getAngularMotionDisc@btCollisionShape@@UBEMXZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsBoxShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getContactBreakingThreshold(float)const " (?getContactBreakingThreshold@btCollisionShape@@UBEMM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsSphereShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getContactBreakingThreshold(float)const " (?getContactBreakingThreshold@btCollisionShape@@UBEMM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getContactBreakingThreshold(float)const " (?getContactBreakingThreshold@btCollisionShape@@UBEMM@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsBoxShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btBoxShape::calculateLocalInertia(float,class btVector3 &)const " (?calculateLocalInertia@btBoxShape@@UBEXMAAVbtVector3@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsSphereShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btSphereShape::calculateLocalInertia(float,class btVector3 &)const " (?calculateLocalInertia@btSphereShape@@UBEXMAAVbtVector3@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsConeShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btConeShapeZ::btConeShapeZ(float,float)" (??0btConeShapeZ@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::ConeCollisionShape::ConeCollisionShape(float,float,class Ogre::Vector3 const &)" (??0ConeCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsConeShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btConeShapeX::btConeShapeX(float,float)" (??0btConeShapeX@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::ConeCollisionShape::ConeCollisionShape(float,float,class Ogre::Vector3 const &)" (??0ConeCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsConeShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btConeShape::btConeShape(float,float)" (??0btConeShape@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::ConeCollisionShape::ConeCollisionShape(float,float,class Ogre::Vector3 const &)" (??0ConeCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsMeshToShapeConverter.obj) : error LNK2019: unresolved external symbol "public: bool __thiscall btShapeHull::buildHull(float)" (?buildHull@btShapeHull@@QAE_NM@Z) referenced in function "public: class OgreBulletCollisions::ConvexHullCollisionShape * __thiscall OgreBulletCollisions::VertexIndexToShape::createConvex(void)" (?createConvex@VertexIndexToShape@OgreBulletCollisions@@QAEPAVConvexHullCollisionShape@2@XZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsMeshToShapeConverter.obj) : error LNK2019: unresolved external symbol "public: __thiscall btConvexHullShape::btConvexHullShape(float const *,int,int)" (??0btConvexHullShape@@QAE@PBMHH@Z) referenced in function "public: class OgreBulletCollisions::ConvexHullCollisionShape * __thiscall OgreBulletCollisions::VertexIndexToShape::createConvex(void)" (?createConvex@VertexIndexToShape@OgreBulletCollisions@@QAEPAVConvexHullCollisionShape@2@XZ)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsConvexHullShape.obj) : error LNK2001: unresolved external symbol "public: __thiscall btConvexHullShape::btConvexHullShape(float const *,int,int)" (??0btConvexHullShape@@QAE@PBMHH@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsStaticPlaneShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btStaticPlaneShape::btStaticPlaneShape(class btVector3 const &,float)" (??0btStaticPlaneShape@@QAE@ABVbtVector3@@M@Z) referenced in function "public: __thiscall OgreBulletCollisions::StaticPlaneCollisionShape::StaticPlaneCollisionShape(class Ogre::Vector3,float)" (??0StaticPlaneCollisionShape@OgreBulletCollisions@@QAE@VVector3@Ogre@@M@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btGImpactMeshShape::calculateLocalInertia(float,class btVector3 &)const " (?calculateLocalInertia@btGImpactMeshShape@@UBEXMAAVbtVector3@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsGImpactShape.obj) : error LNK2001: unresolved external symbol "public: virtual void __thiscall btGImpactMeshShapePart::calculateLocalInertia(float,class btVector3 &)const " (?calculateLocalInertia@btGImpactMeshShapePart@@UBEXMAAVbtVector3@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsCapsuleShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btCapsuleShapeZ::btCapsuleShapeZ(float,float)" (??0btCapsuleShapeZ@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::CapsuleCollisionShape::CapsuleCollisionShape(float,float,class Ogre::Vector3 const &)" (??0CapsuleCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsCapsuleShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btCapsuleShape::btCapsuleShape(float,float)" (??0btCapsuleShape@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::CapsuleCollisionShape::CapsuleCollisionShape(float,float,class Ogre::Vector3 const &)" (??0CapsuleCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>OgreBulletCollisions_d.lib(OgreBulletCollisionsCapsuleShape.obj) : error LNK2019: unresolved external symbol "public: __thiscall btCapsuleShapeX::btCapsuleShapeX(float,float)" (??0btCapsuleShapeX@@QAE@MM@Z) referenced in function "public: __thiscall OgreBulletCollisions::CapsuleCollisionShape::CapsuleCollisionShape(float,float,class Ogre::Vector3 const &)" (??0CapsuleCollisionShape@OgreBulletCollisions@@QAE@MMABVVector3@Ogre@@@Z)
1>..\..\..\..\bin\debug\OgreBulletDynamicsDemo_d.exe : fatal error LNK1120: 22 unresolved externals

***************************************************
I am lost, and It seems that these errors are related with Bullet, since those unsolved externals are pre-indexed by "bt-",

Thank you in advance for your help.

---
moustique


I have completely same error.

Ogre 1.7.3 VS 2010 SDK( setup env vars )
latest OgreBullet from the SVN
Latest Bullet 2.7.8( which had been sucessfully built and setup env vars )

I've been fighting with this error about two days, tried different combinations of Ogre 1.7.3,1.7.2,1.7.1 + Bullet 2.7.7, 2.7.8 + OgreBullet from SVN.

My linker depencies in Debug

OgreMain_d.lib
ois_d.lib
OgreBulletCollisions_d.lib
OgreBulletDynamics_d.lib
bulletcollision.lib
bulletdynamics.lib
linearmath.lib
ConvexDecomposition.lib
libboost_thread-vc100-mt-gd-1_44.lib


My linker depencies in Release

OgreMain.lib
ois.lib
OgreBulletCollisions.lib
OgreBulletDynamics.lib
bulletcollision.lib
bulletdynamics.lib
linearmath.lib
convexdecomposition.lib
libboost_thread-vc100-mt-1_44.lib


Could someone help me please?

TheKnyazz

30-07-2011 18:19:20

If someone else will face that errors...

It caused by bullet's configuration in cmake, my cmake script chosed options (install libs, install extra libs, anŠ² double precision), don't know which of this options definetly caused errors, but if that options unmarked, all will be ok.