Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the difference between /mtd and /mdd (in code generation property section) in Visual Studio

What's the difference between specifying /mdd (multi-threaded debug dll) and /mtd (multi-threaded debug) in Visual Studio??

like image 629
Cute Avatar asked May 28 '09 05:05

Cute


2 Answers

/mtd requires a static link, to produce a .exe that's larger but not dependent on the DLL (that comes with VS2005) containing the runtime library.

like image 123
Alex Martelli Avatar answered Oct 15 '22 05:10

Alex Martelli


In general if your application is small and does not contain multiple DLLs or EXEs you may prefer to statically link to the runtime libraries. This will simplify the distribution process since you will not need to install the runtime libraries.

If you have multiple DLLs or EXEs, since each EXE and DLL will be larger when statically linked as Alex stated, you may prefer to use dynamic linking to the runtime libraries making your application smaller.

like image 36
Stephen Nutt Avatar answered Oct 15 '22 07:10

Stephen Nutt