2

In the static release of my application, I do not want the user to need the msvcrt runtime. My application depends on another library that I compile myself. Should this library use multithreaded or multithreaded DLL when compiling it? The library is static compiled.

Thanks

ildjarn
  • 60,915
  • 9
  • 122
  • 205
jmasterx
  • 50,457
  • 91
  • 295
  • 535
  • Looks like an answer here: http://stackoverflow.com/questions/1073509/should-i-redistribute-msvcrt-dll-with-my-application – holtavolt May 20 '11 at 00:15

2 Answers2

2

VC++'s license agreement prohibits the distribution of debug builds on any computer that doesn't already have VC++ installed, so your only option is to use /MTd or /MDd for debug builds while developing the application and /MT for the release build meant for distribution.

ildjarn
  • 60,915
  • 9
  • 122
  • 205
2

You should use DLL CRTs wherever possible, you can end up with trouble if you start linking multiple copies statically. If you know for a fact that you're compiling the final product, then you could link statically.

Puppy
  • 141,834
  • 35
  • 244
  • 454