我使用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
那么,我该如何解决这个问题以及错误在哪里?
答案 0 :(得分:0)
您需要在链接器标志中添加-lcrystalhd。 您可以使用下面的代码查找所有链接器标志。
List<int>