【发布时间】:2022-01-06 03:04:57
【问题描述】:
这个警告:
LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts
with use of other libs; use /NODEFAULTLIB:library
是 Visual Studio 中相当常见的警告。我想了解它的确切原因以及处理它的正确方法(如果有的话)。
这出现在调试版本中,使用 /MDd 编译。该项目链接到诸如 Windows Version.dll 和 pdh.dll 之类的东西,它们本身链接到 MSVCRT.dll。显然,我没有这些的调试版本,无法编译它们。
所以我在链接器命令行中添加了/NODEFAULTLIB:MSVCRT,它实际上确实删除了警告。但这实际上是做什么的?为什么有必要?
【问题讨论】:
标签: visual-studio dll linker warnings msvcrt