我正在尝试在Windows应用程序中使用FFMpeg库。我使用MingW-w64编译FFMpeg,使用x86和x86_64架构分别编译静态库一次。目前,我正在尝试将32位x86库与我的VS2008应用程序链接起来。库已添加到库路径中,VS没有抱怨无法加载.a文件。
但是,我遇到了几个未解决的符号错误,例如ait_rtp_receiver.lib(ait_decoder_lib.obj) : error LNK2001: unresolved external symbol _av_free。
我将FFMpeg头文件作为extern C导入,并且可以在.a中看到没有前导下划线的符号。我该怎么做才能使Mingw-w64的gcc和VS编译器套件的名称装饰兼容?
但是,我遇到了几个未解决的符号错误,例如ait_rtp_receiver.lib(ait_decoder_lib.obj) : error LNK2001: unresolved external symbol _av_free。
我将FFMpeg头文件作为extern C导入,并且可以在.a中看到没有前导下划线的符号。我该怎么做才能使Mingw-w64的gcc和VS编译器套件的名称装饰兼容?
--enable-shared
),然后使用生成的import *.lib与MSVC
进行链接。使用MSVC
链接静态MinGW
库是一件非常麻烦的事情,因为您还必须链接libgcc.a、libgcc_eh.a等其他库。因此,最好通过编译dlls来解决问题。 - Thomas