2011-06-30 61 views
1

哎,所以我刚刚下载的子弹2.78,并采取了以下措施:子弹物理引擎静态库的安装问题

  • 解压的,发现这个tutorial

  • 严格遵循了C进行的步骤,除了我发现教程中的图片像INSTALL LIBS那样检查了一些东西,并且我没有这样做,所以我最终检查了所有可能的东西。

  • 刚一进新生成的BULLET_PHYSICS.vcxproj并且把它建立在调试和发布

  • 看出我有一堆的新库在msvn lib文件夹/ BulletBuild/lib下,但他们什么也没做

  • 遵循本教程中的其余步骤正是为了建立实际的项目

  • 试图建立的代码的最后一行:FAIL

  • 想知道做我需要的DLL,因为只有和的.libs PDBS lib文件夹中出现了,和教程没有提到EM

我唯一的经验,在重建库是通过SFML通过建设它的msvn文件包含在下载中,并使用生成的动态lib和dll文件。然而,教程中的说明却非常不同。 (如果有人可以向我解释这是如何工作,这将是伟大的)

我按照指示完全,多次,但我不知道我失踪。如果我注释掉的主代码行,但保留包括建筑工作,但是当我把它我得到这个:

1>BulletTestApp.obj : error LNK2001: unresolved external symbol "void * __cdecl btAlignedAllocInternal(unsigned int,int)" ([email protected]@[email protected]) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "void __cdecl btAlignedFreeInternal(void *)" ([email protected]@[email protected]) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall btConvexInternalShape::getAabbSlow(class btTransform const &,class btVector3 &,class btVector3 &)const " ([email protected]@@[email protected]@[email protected]@[email protected]) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual char const * __thiscall btCollisionShape::serialize(void *,class btSerializer *)const " ([email protected]@@[email protected]@@Z) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: __thiscall btPolyhedralConvexShape::btPolyhedralConvexShape(void)" ([email protected]@[email protected]) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall btPolyhedralConvexShape::~btPolyhedralConvexShape(void)" ([email protected]@[email protected]) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall btConvexInternalShape::setLocalScaling(class btVector3 const &)" ([email protected]@@[email protected]@@Z) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall btCollisionShape::getBoundingSphere(class btVector3 &,float &)const " ([email protected]@@[email protected]@[email protected]) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getAngularMotionDisc(void)const " ([email protected]@@UBEMXZ) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual float __thiscall btCollisionShape::getContactBreakingThreshold(float)const " ([email protected]@@[email protected]) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall btCollisionShape::serializeSingleShape(class btSerializer *)const " ([email protected]@@[email protected]@@Z) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall btBoxShape::getAabb(class btTransform const &,class btVector3 &,class btVector3 &)const " ([email protected]@@[email protected]@[email protected]@[email protected]) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall btBoxShape::calculateLocalInertia(float,class btVector3 &)const " ([email protected]@@[email protected]@@Z) 
    1>BulletTestApp.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall btPolyhedralConvexShape::initializePolyhedralFeatures(void)" ([email protected]@@UAE_NXZ) 
    1>C:\Libraries and Headers\Bullet\bullet-2.78\msvc\BulletTestApp\Release\BulletTestApp.exe : fatal error LNK1120: 14 unresolved externals 

我知道某处有一个链接的问题,但我也跟着指示操作,所以就不会不知道如何解决它。当看到添加的项目的属性时,我没有看到任何额外的依赖关系,如果这不是它本应该如此的话...... 但我想我不明白这种首先使用库的方法,尽管如此知识会有所帮助。

回答

4

好吧,很明显,右键点击我的TestBulletApp项目并点击'Project Dependencies'就是我出错的地方。 msVS ++ 2010由于某种原因在那里留下了选项,即使它
doesn't work to do it that way

反而使项目依赖于解决方案,您必须右键点击你的项目像我的“TestBulletApp”和去属性 - >通用属性 - >框架和引用 - >添加新引用的其他项目“,并添加依赖于已添加到sollution静态库项目,如‘bulletCollision’或什么;还要检查‘链接库相关性’是在右手边真

所以是感谢头。咳嗽'咳嗽'=)