在C++生成器中,当我编译时
[ilink32 Error] Error: 'C:\PATH\TO\A\LIB\INCLUDED\IN\THE\PROJECT\ALIBRARY.LIB' contains invalid OMF record, type 0x21 (possibly COFF)当我将.lib与实用程序coff2omf进行转换时,new会释放重要的函数。
发布于 2013-07-17 21:05:45
C++Builder不能使用来自其他编译器的.lib文件,只能使用它自己的文件。
如果.lib文件是DLL的导入库,则使用C++Builder的命令行IMPLIB工具直接从DLL创建一个新的.lib文件。
如果.lib文件是一个静态库(包含实际代码),则C++Builder的命令行COFF2OMF工具可以将库转换成,但不能保证。这取决于库实际使用的是哪种代码。如果不可能进行转换,则必须将.lib文件包装到在创建.lib文件的同一个编译器中编写的DLL中。然后可以在C++Builder中使用DLL。
发布于 2022-08-01 07:00:01
我也面临着同样的问题。我使用了工具COFF2OMF来隐藏现有的库文件,使它们与C++Builder兼容。对我来说很管用。语法:
./bin> COFF2OMF libssl.lib alibssl.lib
..Embarcadero/../bin> COFF2OMF libcrypto.lib alibcrypto.lib重命名转换后的文件,并将它们放置在所需位置。
https://stackoverflow.com/questions/17694860
复制相似问题