• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
我是张洪铭我是熊博士
时光静好,与君同;细水长流,与君语
博客园    首页    新随笔    联系   管理    订阅  订阅

BCB ERROR:[Linker Error] 'XXX.LIB' contains invalid OMF record, type 0x21 (possibly COFF)

今天C++builder 导入 gts .lib  (gts.dll)库文件 编译报错:

[Linker Error] 'D:\...\V4.05.007.1000-20161028\GTS.LIB' contains invalid OMF record, type 0x21 (possibly COFF)

在这之前经常使用这个gts.lib,现在报这个错,哈哈---蒙了---百度一下高手在民间:

出现了这个错误,就说明这个lib是微软VC格式COFF的lib,不能被C++Builder直接调用。得用Borland提供的coff2omf工具或implib工具重新生成一个能够被C++Builder调用的OMF格式的lib。


1、coff2omf用于转换Coff格式的Lib 到 OMF格式的Lib 。在cmd中的使用形式为coff2omf  c:/ml.lib  c:/ml1.lib 。其中coff2omf  的使用环境默认为打开cmd输入coff2omf  即可。
  转换完成之后,通过单击【project】->【Add to project】->【lib文件】->【导入】来把刚刚转换好的lib文件导入到工程里面。这一步非常重要,一定不要忘记! 2、implib1用于将dll文件转化为CB所能够调用的lib文件。implib1.exe -a c:/KeyDLib.lib c:/KeyDLib.dll,其中c:/KeyDLib.lib是将要生成的文件,另一个是已经有的文件,
参数a不用管它。转换完成之后,通过单击【project】->【Add to project】->【lib文件】->【导入】来把刚刚转换好的lib文件导入到工程里面。这一步非常重要,一定不要忘记!

 方法一(已验证):

 

方法二(已验证):

 

 

编译已通过!赞

 

但是,好奇怪,我之后用里面东西的时候,会报另外的错。!!

 

posted @ 2018-04-04 17:38  我是张洪铭我是熊博士  阅读(788)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3