可视化C++:发布模式的运行时库作为'Multi-threaded Debug DLL'

Visual C++: Runtime Library of Release Mode as 'Multi-threaded Debug DLL'

本文关键字:DLL 运行时 Debug Multi-threaded C++ 布模式 模式 可视化      更新时间:2023-10-16

在这里,我要求我在通过"发布模式"构建Visual C++代码时遇到LNK2001错误,即使我在"发布"和"调试"模式之间的所有配置设置都是相同的(至少我更改的那些已通过"所有配置"进行了更改(。

我可以通过将发布模式:配置属性 -> C/C++ -> 代码生成 ->运行时库从"多线程 DLL (/MD("更改为"多线程调试 DLL (/MDd("来解决问题。这告诉我什么?我所做的很奇怪(从调试中获取发布的运行时库(?或者这是否意味着我的"发布"配置是错误的?

我建议你可以参考链接器工具错误LNK2001

如果在构建调试时链接到发布模式库 应用程序的版本。同样,如果您使用选项/MTd 或/MDd 或者定义_DEBUG然后链接到发布库,您应该 预计会出现许多潜在的未解决的外部问题,以及其他问题。 将发布模式生成与调试库链接也会导致 类似的问题。若要解决此问题,请确保使用调试 调试版本中的库和零售中的零售库 建立。

就我而言,您正在发布模式下链接调试DLL。应确保在调试版本中使用调试库,在零售版本中使用零售库。