痛苦的ffmpeg libav编译安装过程

最近学习音视频,打算编译一下ffmpeg,然后用c++写一些小demo,结果编译过程中遇到了几个问题,记录一下

1 根据教程安装

链接: ffmpeg编译指南

2 遇到的问题和解决办法

2.1 安装libaom
     可能是因为某种原因,这个库下载不了,只能将后面安装ffmpeg时的–enable-libaom改为–disable-libaom
2.2
    中间有几个忘了,想起来再写
2.3 使用过程中的坑
    1,按上面的教程会修改环境变量(上面链接有解释为什么要这样做),导致在使用ffmpeg命令行工具的时候,会出现“找不到libdav1d.so.5”类似这样的错误,同时之后写程序的时候编译可以通过但是不能运行,这个错误有两点需要改:一个是取消修改过的环境变量,二是将生成的动态库所在目录添加到/etc/ld.so.conf中
    2,链接时如果只添加用到的libavformat.a或者libavcodec.a这样的静态库,而不添加依赖,就会出现很多undefined reference错误,在编译ffmpeg之后,之前创建的ffmpeg_build/lib目录下有一个pakconfig目录,其中有以各个库名为头,以.pc为后缀的文件,打开能开到每个库的依赖,需要将其按顺序添加到编译选项中,主要放到对应库的后面,里面有很多重复的,不要修改,因为有循环依赖之类的。具体我也不太懂。
    3,用c++编译器编译时,include头文件的时候要用extern “C” {}包起来,不然会报undefined reference错误
    遇到了挺多问题的,但是到写文章的时候有些问题反倒想不起来了,以后再说吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值