Reputation: 2291
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?
Upvotes: 1
Views: 4998
Reputation: 336
I tried the first option above - copying the DLLs and Manifest from C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\Debug_NonRedist into my application directory
The SxS system on my test machine kept complaining (via sxstrace) that the version numbers were not correct.
Interad, I found a more recent versions of the manifest in c:\Windows\winsxs\Manifests\amd64_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.21022.8_none_4ec74c6b3093419c.manifest and copied this to Microsoft.VC90.DebugCRT.manifest in the test application directory.
Upvotes: 0
Reputation: 39496
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:
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\Debug_NonRedist
into your application directoryUpvotes: 4