在C++ Builder中,当我编译时
[ilink32 Error] Error: 'C:\PATH\TO\A\LIB\INCLUDED\IN\THE\PROJECT\ALIBRARY.LIB' contains invalid OMF record, type 0x21 (possibly COFF)
当我使用实用程序
coff2omf
转换.lib时,新的lib失去了重要的功能。
最佳答案
C++ Builder不能使用其他编译器提供的.lib文件,只能使用它自己的。
如果.lib文件是DLL的导入库,请使用C++ Builder的命令行IMPLIB工具直接从DLL创建一个新的.lib文件。
如果.lib文件是静态库(包含实际代码),则C++ Builder的命令行COFF2OMF工具 MAY 能够转换该库,但不能保证。这实际上取决于库实际使用的代码类型。如果无法进行转换,则必须将.lib文件包装到DLL中,该DLL是在创建.lib文件的同一编译器中编写的。然后,您可以在C++ Builder中使用DLL。
关于c++builder - 链接器错误 “contains invalid OMF record”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17694860/