ffmpeg4.2.2编译完成后,如何调用库?

Giant NG 2020-05-18 09:17:12
环境:Ubuntu16.04
ffmpeg版本:4.2.2
问题描述:在Ubuntu下,将ffmpeg编译完成后,生成的文件放于MyBuild目录下,

对应的头文件与库文件均放于include和lib目录下,

至此,编译没有问题。

准备编写一个最简单的demo,尝试调用ffmpeg的api,创建了一个目录FFmpeg_learning,将原先编译好的MyBuild中的include和lib目录拷贝至此目录下,并编写ffmpegConfiguration.c,代码如下,用于测试api,只打印最简单的配置信息:


#include <stdio.h>
#include "include/libavcodec/avcodec.h"
#include "include/libavformat/avformat.h"
#include "include/libavutil/avutil.h"

int main(int argc, char *agrv[])
{
printf("%s\n", avcodec_configuration());

return 0;
}


然后进行编译,编译命令为:$ gcc ./ffmpegConfiguration.c -o ffmpegConfiguration -lavcodec -lavformat -lavutil
会报错:


请问各位大神,是编译命令出错吗?还是哪个地方需要修改?跪求解决方法……
...全文
173 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
布鲁格若门 2020-05-19
  • 打赏
  • 举报
回复
引用 2 楼 ZefinNg的回复:
[quote=引用 1 楼 private_void_main 的回复:] 还有几个参数要指定,-I指定头文件路径,-L指定库路径
试了一下,发现确实是这样。编译命令应该改为:$ gcc ffmpegConfiguration.c -o ffmpegConfiguration -I./include/ -L./lib/ -lavcodec 感谢。[/quote] 不客气
Giant NG 2020-05-19
  • 打赏
  • 举报
回复
引用 1 楼 private_void_main 的回复:
还有几个参数要指定,-I指定头文件路径,-L指定库路径
试了一下,发现确实是这样。编译命令应该改为:$ gcc ffmpegConfiguration.c -o ffmpegConfiguration -I./include/ -L./lib/ -lavcodec 感谢。
布鲁格若门 2020-05-18
  • 打赏
  • 举报
回复
还有几个参数要指定,-I指定头文件路径,-L指定库路径

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧