这个警告:
LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts
with use of other libs; use /NODEFAULTLIB:library
是Visual Studio中相当常见的警告。我想知道它的确切原因和正确的处理方法(如果有的话)。
这在调试版本中出现,用/MDd
编译。该项目链接到窗口Version.dll
和pdh.dll
,它们本身链接到MSVCRT.dll
。显然,我没有这些文件的调试版本,无法编译它们。
因此,我将/NODEFAULTLIB:MSVCRT
添加到链接器命令行,它实际上删除了警告。但这到底是做什么的呢?为什么有必要?