VC6链接冲突

发布于 2024-08-26 01:49:50 字数 174 浏览 8 评论 0原文

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

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

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

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

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

I have an old c++ project compiled with VC6.

I need to statically link a new library to implement a new functionality.

Unfortunately the new library define a symbol (i.e. _inflate) that is already defined in a previously linked static library.

Of course I cannot get rid of either library, and of course I have no access to the library's source code.

Is there a way to avoid the linker error (LNK2005)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

违心° 2024-09-02 01:49:50

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

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

If you know that the two versions of _inflate are identical, or at least "compatible", then you can use the /FORCE:Multiple linker option to force it to ignore name clashes.

Of course, if it links to a version of that code that is "incompatible" in any way it could cause undefined behaviour.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文