views:

46

answers:

1

What is the story with the VC debug CRT? where is it supposed to come from?

in particular, on my machine, running both VS2008 and VS2010 I dont have the amd64 version installed in c:\windows\winsxs?

reading about this on the internet has been very confusing, I feel that everyone is hacking around, copying bits to C:\windows\system32, etc.

Where am I suppose to be getting the debug CRT and how do I correctly install it? I see the binaries were copied to C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist during the VS install.

now what?

+3  A: 

Microsoft don't want you to put the Debug CRT DLL on end user machines so they don't provide an installer for it.

Quote from the VC2005 doc on MSDN Which I assume still applies to 2008 (emphasis is mine):

Debug versions of an application are not redistributable and none of the debug versions of the various Visual C++ dynamic-link libraries (DLLs) are redistributable. Debug versions of an application and Visual C++ libraries can only be deployed to another computer internal to your development site for the sole purpose of debugging and testing your application on a computer that does not have Visual C++ 2005 installed.

If you need to test a debug build of you application on another machines you still can:

  • Copy the DLL and manifest from C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\Debug_NonRedist into your application directory
  • Include the Microsoft_VC90_DebugCRT_x86.msm merge module as part of your own installer.
Alexandre Jasmin
no kidding? it's not that I dont believe you but could you provide a reference? how are you sure?
stuck
@Chris Gray I have edited my post. I can't find a reference for vc9 unfortunately. Maybe things have changed.
Alexandre Jasmin
thanks! this is just what I wanted - thanks for your help!
stuck