如何在gcc中使用库“.lib”和“.a”文件

时间:2013-12-16 19:03:59

标签: gcc ffmpeg

我有一个简单的C代码,它使用libavcodecffmpeg的一些函数。我尝试使用gcc(在Windows中使用mingw)编译代码,如下所示:

gcc -o mycode mycode.c 

但是我收到很多错误,例如“对av_free的未定义引用”。我知道这些函数是在ffmpeg的库中定义的。我可以访问avcodec.liblibavcodec.dll.a等文件,但我不知道如何将它们与gcc一起使用,以便我可以编译并生成我的文件。知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

尝试类似:

gcc -o mycode mycode.c -L C:\path\to\avcodec -lavcodec

我没有Windows,所以我自己无法测试。

关键是你需要告诉gcc一些函数在avcodec.lib / .dll中。在你知道.a / .dll所在的-L后,你必须告诉链接器实际考虑与-lavcodec对应的avcodec.lib / .dll。