Linker error 2001 PLEASE HELP ME

Tinekk
Posts: 1
Joined: Sat Jan 02, 2010 2:33 pm

Linker error 2001 PLEASE HELP ME

Post by Tinekk »

Code: Select all

OpenGL32.lib
glut32.lib
WinMM.lib
glaux.lib
GlU32.lib
glew32.lib
SDL.lib
SDLmain.lib

Code: Select all

#include <iostream>

#include <btBulletDynamicsCommon.h>

#pragma comment(lib,"libs//libBulletColladaConverter_d.lib")
#pragma comment(lib,"libs//libbulletcollision_d.lib")
#pragma comment(lib,"libs//libbulletdynamics_d.lib")
#pragma comment(lib,"libs//libbulletmath_d.lib")
#pragma comment(lib,"libs//libbulletmultithreaded_d.lib")
#pragma comment(lib,"libs//libbulletopenglsupport_d.lib")
#pragma comment(lib,"libs//libbulletsoftbody_d.lib")
#pragma comment(lib,"libs//libcolladadom_d.lib")
#pragma comment(lib,"libs//libconvexdecomposition_d.lib")
#pragma comment(lib,"libs//libGIMPACTUtils_d.lib")
#pragma comment(lib,"libs//libglui_d.lib")
#pragma comment(lib,"libs//libiff_d.lib")
#pragma comment(lib,"libs//liblibxml_d.lib")
#pragma comment(lib,"libs//libcolladadom.lib")
#pragma comment(lib,"libs//libGIMPACTUtils.lib")
#pragma comment(lib,"libs//appAllBulletDemos.lib")

#pragma comment(lib,"libs//glew32.lib")
#pragma comment(lib,"libs//glut32.lib")

int main (void)
{
 
        btVector3 worldAabbMin(-10000,-10000,-10000);
        btVector3 worldAabbMax(10000,10000,10000);
        int maxProxies = 1024;
        btAxisSweep3* broadphase = new btAxisSweep3(worldAabbMin,worldAabbMax,maxProxies);
 
        btDefaultCollisionConfiguration* collisionConfiguration = new btDefaultCollisionConfiguration();
        btCollisionDispatcher* dispatcher = new btCollisionDispatcher(collisionConfiguration);
 
        btSequentialImpulseConstraintSolver* solver = new btSequentialImpulseConstraintSolver;
 
        btDiscreteDynamicsWorld* dynamicsWorld = new btDiscreteDynamicsWorld(dispatcher,broadphase,solver,collisionConfiguration);
 
        dynamicsWorld->setGravity(btVector3(0,-10,0));
 
 
        btCollisionShape* groundShape = new btStaticPlaneShape(btVector3(0,1,0),1);
 
        btCollisionShape* fallShape = new btSphereShape(1);
 
 
        btDefaultMotionState* groundMotionState = new btDefaultMotionState(btTransform(btQuaternion(0,0,0,1),btVector3(0,-1,0)));
        btRigidBody::btRigidBodyConstructionInfo
                groundRigidBodyCI(0,groundMotionState,groundShape,btVector3(0,0,0));
        btRigidBody* groundRigidBody = new btRigidBody(groundRigidBodyCI);
        dynamicsWorld->addRigidBody(groundRigidBody);
 
         btDefaultMotionState* fallMotionState =
                new btDefaultMotionState(btTransform(btQuaternion(0,0,0,1),btVector3(0,50,0)));
        btScalar mass = 1;
        btVector3 fallInertia(0,0,0);
        fallShape->calculateLocalInertia(mass,fallInertia);
        btRigidBody::btRigidBodyConstructionInfo fallRigidBodyCI(mass,fallMotionState,fallShape,fallInertia);
        btRigidBody* fallRigidBody = new btRigidBody(fallRigidBodyCI);
        dynamicsWorld->addRigidBody(fallRigidBody);
 

 
        for (int i=0 ; i<300 ; i++) {
                dynamicsWorld->stepSimulation(1/60.f,10);
 
                btTransform trans;
                fallRigidBody->getMotionState()->getWorldTransform(trans);
 
                std::cout << "sphere height: " << trans.getOrigin().getY() << std::endl;
        }
 
        dynamicsWorld->removeRigidBody(fallRigidBody);
        delete fallRigidBody->getMotionState();
        delete fallRigidBody;
 
        dynamicsWorld->removeRigidBody(groundRigidBody);
        delete groundRigidBody->getMotionState();
        delete groundRigidBody;
 
 
        delete fallShape;
 
        delete groundShape;
 
 
        delete dynamicsWorld;
        delete solver;
        delete collisionConfiguration;
        delete dispatcher;
        delete broadphase;
 
        return 0;
}

That is code and libs which I adds.

Code: Select all

1>------ Build started: Project: BULLET_DEMO, Configuration: Debug Win32 ------
1>Linking...
1>LINK : warning LNK4098: defaultlib 'LIBCMTD' conflicts with use of other libs; use /NODEFAULTLIB:library
1>main.obj : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getContactBreakingThreshold(float)const " (?getContactBreakingThreshold@btCollisionShape@@UBEMM@Z)
1>C:\Users\Tinek\Desktop\bullet-2.75\MOJE\BULLET_DEMO\Debug\BULLET_DEMO.exe : fatal error LNK1120: 1 unresolved externals
1>Build log was saved at "file://c:\Users\Tinek\Desktop\bullet-2.75\MOJE\BULLET_DEMO\BULLET_DEMO\Debug\BuildLog.htm"
1>BULLET_DEMO - 2 error(s), 1 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
What can i do to start it??
mako90
Posts: 28
Joined: Tue Jan 05, 2010 12:41 pm

Re: Linker error 2001 PLEASE HELP ME

Post by mako90 »

Hi,
the order you link static libraries matters. Bulletdynamics may use bulletcollision but not able to find it. Change the order you link libraries.