JointLibary MD linking

A place to discuss everything related to Newton Dynamics.

Moderators: Sascha Willems, walaber

Re: JointLibary MD linking

Postby Julio Jerez » Sat Aug 17, 2013 9:24 am

Oh yes the project configuration was mixing some of the md with mt
I think I have them all fix now, please sync and try again

do not try bash build with VS 2010 is doe no work you nee to build each configuration one at a time
Microsoft broke that functionality in 2010 and their solution for 2012 was to remove it altogether. That I a many people still use VS 2008
the newer version are more modern but it takes Microsoft three or four generation to get a newton functionality right.
we will probably nee to wait for 2014 for a but free version of visual studio.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: JointLibary MD linking

Postby FSA » Sat Aug 17, 2013 11:02 am

I've synched again. I get the same error's as before. The new projects for 2012 doesn't contain the md configuration. So I opened the 2010 project in visual studio 2012 and build in Debug_md. And I get the same error's again. I think we will get this to work. :)
User avatar
FSA
 
Posts: 322
Joined: Wed Dec 21, 2011 9:47 am

Re: JointLibary MD linking

Postby Julio Jerez » Sat Aug 17, 2013 11:54 am

this have to be a bug with VS 2012, I do not think it handle multiple configurations, when the project are imported from VS2010.
I did this and I still have in my disk, but when to SVN and I download to a different folder the project are all wrong.

Last night the same problem happen, I I thought I made a mistake, by now I have tow VS open in one the project is right, the second is wrong. I can not compare the one I have open to the one that I download because VS lock the file assess.

what I am going to do is that I will make tow solutions, one MT and another MD
the will be what CMake will generate, but Believe that will be a simpler way that Having all the configuration into one solution.
I will also move all of the project to one forder, that will make is simple as well.

I have to go to work now, I will do that when I come back.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: JointLibary MD linking

Postby FSA » Sun Aug 18, 2013 12:44 pm

Any news on that?
User avatar
FSA
 
Posts: 322
Joined: Wed Dec 21, 2011 9:47 am

Re: JointLibary MD linking

Postby Julio Jerez » Sun Aug 18, 2013 2:17 pm

ok I added new forder for Vs 2012 each compile only debug and realese configurations

the folder define the runtime libraries that the linkl to, for example for Md you open

..\newton-dynamics\packages\projects\visualStudio_2012_static_md\build.sln


I only made the buiodl directory which only contain the newt SDK libraries, later I see if I can make the demos whi require me to do the same for all the dependencies.
but now you should be able to compile MD static libraries

if this work I will apply the same to VS 2010 and 2008.
This will be what Cmake will generate, so maybe nex week I see if I can comlet the CMake project to have then make automatically.

sync and try again, see if it works now.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: JointLibary MD linking

Postby FSA » Sun Aug 18, 2013 4:22 pm

OK that's crazy. There're still some linker errors. I made a video about what I'm exactly doing. Maybe I'm just too stupid for that. :(
Please take a look. To download, click the circled download button in the picture below. Sorry dropbox is compressing the video.
http://www.file-upload.net/download-798 ... g.avi.html
Attachments
Download.JPG
Download.JPG (80.4 KiB) Viewed 3071 times
User avatar
FSA
 
Posts: 322
Joined: Wed Dec 21, 2011 9:47 am

Re: JointLibary MD linking

Postby FSA » Mon Aug 19, 2013 8:41 am

Sorry when I'm annoying but I can't build my project without resovling this problem. Have you found any bugs in the video I made?
User avatar
FSA
 
Posts: 322
Joined: Wed Dec 21, 2011 9:47 am

Re: JointLibary MD linking

Postby Julio Jerez » Mon Aug 19, 2013 9:43 am

I saw the video, I saw that you did not copy the libraries dependencies of newton_d.lib
It looks like VS2012 does no copy that setting when importing form VS2010 solutions.
I added now. Sync again.

after you build you do no nee to get all the libraries, only newton_d.lib and dJointLibrary_d.lib for debug
for release just copy newton.lib and dJointLibrary.lib
all the dependencies are appended to those libraries.

I wonder if I should append the all into just one, but that a different problem, for now try that see if it works
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: JointLibary MD linking

Postby FSA » Mon Aug 19, 2013 11:43 am

Yay it works under Debug mode! Maybe you've forgot somehting in release? When I link release version there are these error's:
Code: Select all
Physic.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonSetMemorySystem".
1>Physic.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonCreate".
1>Physic.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonSetSolverModel".
1>Physic.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonGetMaxThreadsCount".
1>Physic.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonSetThreadsCount".
1>Physic.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonDestroyAllBodies".
1>Physic.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonDestroy".
1>Physic.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonUpdate".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodyGetMatrix".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: static void * __cdecl CustomAlloc::operator new(unsigned int)" (__imp_??2CustomAlloc@@SAPAXI@Z)".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: static void __cdecl CustomAlloc::operator delete(void *)" (__imp_??3CustomAlloc@@SAXPAX@Z)".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual int __thiscall CustomPlayerControllerManager::ProcessContacts(class CustomPlayerController const * const,struct NewtonWorldConvexCastReturnInfo * const,int)const " (__imp_?ProcessContacts@CustomPlayerControllerManager@@UBEHQBVCustomPlayerController@@QAUNewtonWorldConvexCastReturnInfo@@H@Z)".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual class CustomPlayerController * __thiscall CustomPlayerControllerManager::CreatePlayer(float,float,float,float,float,class dMatrix const &)" (__imp_?CreatePlayer@CustomPlayerControllerManager@@UAEPAVCustomPlayerController@@MMMMMABVdMatrix@@@Z)".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual __thiscall CustomPlayerController::~CustomPlayerController(void)" (__imp_??1CustomPlayerController@@UAE@XZ)".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall CustomPlayerController::CustomPlayerController(void)" (__imp_??0CustomPlayerController@@QAE@XZ)".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual __thiscall CustomPlayerControllerManager::~CustomPlayerControllerManager(void)" (__imp_??1CustomPlayerControllerManager@@UAE@XZ)".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall CustomPlayerControllerManager::CustomPlayerControllerManager(struct NewtonWorld * const)" (__imp_??0CustomPlayerControllerManager@@QAE@QAUNewtonWorld@@@Z)".
1>Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodySetMatrix".
1>precompiled.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonDestroyBody".
1>precompiled.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonDestroyCollision".
1>PhysicUtils.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodyGetMassMatrix".
1>PhysicUtils.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonWorldRayCast".
1>PhysicUtils.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodyGetUserData".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonCreateDynamicBody".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodySetMassProperties".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodySetUserData".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonCreateConvexHull".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonCreateBox".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonCreateSphere".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonCreateTreeCollision".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonTreeCollisionBeginBuild".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonTreeCollisionAddFace".
1>RigidBodyHandler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonTreeCollisionEndBuild".
1>NoxetEngine.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonWorldGetVersion".
1>PhysicBody.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodySetForce".
1>PhysicBody.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodyAddForce".
1>PhysicBody.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodyAddTorque".
1>PhysicBody.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__NewtonBodySetForceAndTorqueCallback".

But debug works now!! :D
User avatar
FSA
 
Posts: 322
Joined: Wed Dec 21, 2011 9:47 am

Re: JointLibary MD linking

Postby Julio Jerez » Mon Aug 19, 2013 12:47 pm

I think in your project you did not add preprocessor: _NEWTON_STATIC_LIB
by default the engine build dlls. See if that's the problem.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: JointLibary MD linking

Postby FSA » Mon Aug 19, 2013 1:13 pm

Yes my fault. It works now! Very very big thank you :)
User avatar
FSA
 
Posts: 322
Joined: Wed Dec 21, 2011 9:47 am

Previous

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 2 guests