【发布时间】:2013-01-02 20:32:32
【问题描述】:
我有一个第三方静态库,它也与 C/C++ 运行时静态链接。我只有这个库的发布版本。
当我尝试将此库链接到我的应用程序的调试版本时,链接器抱怨静态库的迭代器调试级别 (0) 与我的应用程序的级别 (2) 不匹配。
有没有办法强制链接器忽略这个错误?我希望能够在调试模式下使用此库添加的功能,并且无法获得此库的调试版本。
顺便说一句,我无法立即想到这种定义不匹配会引起的任何问题。
【问题讨论】:
-
你用的是什么编译器?
-
你能发布确切的错误吗?如果您在谈论 Visual C++ 中的 C++ 标准库迭代器在调试版本和发布版本之间的实现方式非常不同,这很可能是一个问题。
-
您可以创建一个新的 DLL 链接到该静态库中,然后动态链接到您的新 DLL,但这将是一个巨大的痛苦。
-
@BoPersson:这不是重复的。我了解此错误是什么以及如何修复它,但修复对我来说是不可能的。我在问如何强制链接器忽略这种不匹配并继续链接。
标签: c++ visual-studio linker-errors