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
  • 62,044
  • 9
  • 127
  • 211
jmasterx
  • 52,639
  • 96
  • 311
  • 557
  • 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
  • 62,044
  • 9
  • 127
  • 211
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
  • 144,682
  • 38
  • 256
  • 465