首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >链接器错误“包含无效的OMF记录”2

链接器错误“包含无效的OMF记录”2
EN

Stack Overflow用户
提问于 2015-09-21 12:52:32
回答 1查看 1.8K关注 0票数 1

我正在使用Embarcadero XE8 C++ builder 32位。

我在我的程序中添加了一个库来解决Unresolved external error问题。

当我添加库时,我得到了错误,就像在标题中一样。因此,我搜索了这个网站,并在stackoverflow上找到了这个主题:Linker error "contains invalid OMF record"

正如它所说的,COFF2OMF工具可以工作。遗憾的是,它没有对我起作用,我给出了一个7mb库文件,当我用工具转换它时,它只有41‘s.所以我猜转换失败了。当我将转换后的文件添加到我的程序中时,它只会忽略它,仍然会说是unresolved external error

那么如何让我的库与我的C++构建器一起工作呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-21 13:01:06

一些背景:

库需要使用与您试图创建的应用程序相同的工具进行编译,因为每个编译器所做的事情都有点不同。大多数Windows库都是用MVSC ()编译的。

您正在使用Embarcardero编译器,这意味着MVSC库不兼容(您可能已经注意到了;)。

你有多种选择。

  1. 如果可以的话,获取库的源代码并使用自己的编译器编译它。这样,成功的机会是最高的。
  2. 我可能弄错了,因为已经有一段时间了,但是我相信有一个名为implib的工具,它使用共享库(.dll)并从它生成一个Embarcardero风格的.lib,供您的项目使用。
  3. 使用COFF2OMF转换静态库。即使文件大小很奇怪,至少也要尝试一下。
  4. 尝试LoadLibrary函数调用。这一项要求您手动映射所需的函数,但是您需要使用.lib

祝好运。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32695738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档