I am building a Windows OpenGL application with bullet physics support. My development environment setup is :
- OS : Windows 7 SP1 64 bit
- IDE ; Visual Studio 2010 SP1
- BulletPhysics - bullet-2.82-r2704
My application has two configurations i.e. Win32 and x64. Here's my step to build the Windows application :
- First I execute the vs2010.bat file in "bullet-2.82-r2704\build".
- I add project files from vs2010 folder created by step 1 into my visual studio solution.
- Add project dependencies for BulletDynamics, BulletCollision and LinearMath
- Add References for all the thee bullet libraries.
Now when I build my solution for both the configurations (i.e Batch Build for Win32 and x64), everything builds properly except for :
x64 Release - with errors like :
BulletCollision_vs2010_x64_debug.lib(btDefaultCollisionConfiguration.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '2' doesn't match value '0' in stdafx.obj
Win32 Release - with errors like :
Win32_Window.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall btConvexInternalShape ...
Win32 Debug - with errors like :
Win32_Window.obj : error LNK2019: unresolved external symbol "public: __thiscall btRigidBody
Final message - Build: 13 succeeded, 3 failed
I am following this help to build my Visual Studio project :
Note: If I use CMAKE to build VisualStudio solutions for BulletPhysics and then link those separately to my windows application for each CPU architecture then it builds properly (i.e. Build for Win32 and x64 separately).
Is there any way I can make that work with just one Visual Studio solution ?