【问题标题】:Can I link lib compiled with vs2005 in C++ Builder 2007?我可以在 C++ Builder 2007 中链接使用 vs2005 编译的 lib 吗?
【发布时间】:2010-11-18 23:42:20
【问题描述】:

我使用 VS2005 将 google v8 编译成 v8.lib。我可以在 C++ Builder 2007 中链接它吗?

【问题讨论】:

  • 致 Eric M:我收到此错误,似乎 v8.lib 是 COFF 格式的库,而 c++builder 需要 OMF [ILINK32 错误] 错误:'E:\DOC\OPENSOURCE \C++\V8\V8.LIB' 包含无效的 OMF 记录,类型 0x21(可能是 COFF)

标签: c++ hyperlink c++builder


【解决方案1】:

不,不能将 .lib 从 MSVC 重用到 C++Bulder。它们使用不同的文件格式并使用不同的运行时库。

就像 Victor 说的那样,在 MSVC 中创建一个直接的 C DLL,并使用构建器工具 (IMPLIB.exe?) 为 C++Builder 创建存根 .lib,或者只是在构建器中重新构建整个项目。

【讨论】:

    【解决方案2】:

    是的,你可以。我一直都这样做。您需要做的是找出 LIB 中使用的调用约定。在 C++ Builder 项目管理器中,将 LIB 文件添加到源文件列表中,以便链接器知道在链接时包含它。我假设你有 LIB 内容原型的头文件....

    【讨论】:

    • 您是在谈论将使用 Visual Studio 构建的静态库链接到 Borland C++ 吗?我不相信这是可能的,因为这两个工具链在后台使用完全不同的对象格式。 aztack 的评论表明尝试时遇到的麻烦。如果它作为 C 库公开,则可以使用导入存根对 DLL 进行 OTOH 链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-24
    • 1970-01-01
    • 2016-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多