FFMPEg和gcc问题

时间:2011-06-21 13:32:01

标签: c gcc linker ffmpeg compilation

问题是:我写了一个使用FFMPEG的简单程序。编译如下:


gcc -lavcodec -lavformat -lavutil -c test.c

gcc -lavcodec -lavformat -Lavut -o test test.o

编译没有问题,出现测试文件,但是当你开始时: 。 /测试 发生错误:

。 / test:加载共享库时出错:libavcodec.so.53:无法打开共享对象文件:没有这样的文件或目录

最初构建和安装ffmpeg以及文件libavcodec.so.53。可能是什么问题?

1 个答案:

答案 0 :(得分:1)

您似乎正在链接自定义库目录-Lavut中的库。

检查加载程序查找可执行文件库的位置:

ldd ./test

如果它们中的任何一个位于非标准目录中(并且ldd表示找不到特定的库),请将它们附加到LD_LIBRARY_PATH:

LD_LIBRARY_PATH=/tmp/work/avut ./test

如果您愿意,可以使用-rpath链接器选项将库路径硬编码到可执行文件中,例如gcc ... -Wl,-rpath -Wl,/tmp/work/avut