用cmake链接ffmpeg错误

时间:2017-06-05 07:01:43

标签: ffmpeg cmake linker

我使用cmake使用ffmpeg lib创建我的项目,项目很简单。

add_executable(testffmpeg main.cpp)
link_directories( /usr/lib/x86_64-linux-gnu )
target_link_libraries(testffmpeg libavcodec.a libavutil.a )

make时,有很多未定义的引用错误(我的默认cxx编译器被“export cxx = / usr / bin / clang ++”叮当作响。)

/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libavcodec.a(crystalhd.o): In function `receive_frame':(.text+0xef): undefined reference to `DtsProcOutputNoCopy'

但是当我只使用命令时,没关系。

clang -o testffmpeg -lavutil -lavcodec main.cpp

使用gcc时也会出现此错误 gcc -o testffmpeg -lavutil -lavcodec main.cpp

那么,我该如何解决这个问题以及错误在哪里?

1 个答案:

答案 0 :(得分:0)

您需要在链接器标志中添加-lcrystalhd。 您可以使用下面的代码查找所有链接器标志。

List<int>