Static build MSVC In Debug mode libcmt is linked together with libcmtd
when staticly building using MSVC in debug mode default library LIBCMT is linked twice (debug version of LIBCMT LIBCMTD.lib and release version of LIBCMT LIBCMT.lib)
CMakeLists.txt
if( MSVC )
set_target_properties(App1 App2
PROPERTIES
MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>"
)
endif()
it's easy to check it just add to Linker->Command Line: /verbose:lib in debug mode output is
...
3> Searching C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64\libcpmtd.lib:
3> Searching C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64\LIBCMTD.lib:
3> Searching C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64\OLDNAMES.lib:
3> Searching C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64\LIBCMT.lib:
in release mode output is
...
3> Searching C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64\libcpmt.lib:
3> Searching C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64\LIBCMT.lib:
3> Searching C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64\OLDNAMES.lib: