1. 程式人生 > >BCB ERROR:[Linker Error] 'XXX.LIB' contains invalid OMF record, type 0x21 (possibly COFF)

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

cor coff 調用 spa info .lib ins col 編譯報錯

今天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文件導入到工程裏面。這一步非常重要,一定不要忘記!

方法一(已驗證):

技術分享圖片

方法二(已驗證):

技術分享圖片

編譯已通過!贊

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