我有一个用 VC6 编译的旧 C++ 项目。

我需要静态链接一个新库来实现新功能。

不幸的是,新库定义了一个符号(即_inflate)已在先前链接的静态库中定义。

当然,我无法摆脱这两个库,当然我也无法访问该库的源代码。

有没有办法避免链接器错误(LNK2005)?

有帮助吗?

解决方案

如果您知道 _inflate 的两个版本是相同的,或者至少“兼容”,那么您可以使用 /FORCE:多个链接器选项 强制它忽略名称冲突。

当然,如果它链接到该代码的某个版本以任何方式“不兼容”,则可能会导致未定义的行为。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top