0

我在玩 libav*。我写了一个简单的程序来打开一个文件并输出其中有多少流,这只是让我的脚湿透的东西。我与 avformat、avcodec 和 avutil 链接。但是,我从 ld 得到未定义的参考错误。未定义的引用都是 libav* 函数。我查看了详细的链接器输出,发现它与正确的库链接,我使用 objdump 确认符号位于库中,但 ld 仍然抛出未定义的引用错误。

4

1 回答 1

2

你在用 C++ 编程吗?如果是这种情况,您需要添加 'extern "C" {...};'。

看看这里:为什么我们在 C++ 中需要 extern "C"{ #include <foo.h> }? 请注意 libav* 是用 C 编写的。

于 2013-11-14T18:22:11.460 回答