本文演示Centos下面如何编译和安装ffmpeg的过程,
一、ffmpeg的编译和安装
1、下载解压
shell
wget http://www.ffmpeg.org/releases/ffmpeg-5.1.tar.gz
tar -zxvf ffmpeg-5.1.tar.gz
2、进入压缩目录,编译编译和安装
shell
cd ffmpeg-5.1
./configure --prefix=/usr/local/ffmpeg --enable-debug=3 --enable-shared --disable-static
make && make install
3、配置环境变量
shell
vi /etc/profile
# 在最后PATH添加环境变量:
export PATH=$PATH:/usr/local/ffmpeg/bin
# 保存退出
# 查看是否生效
source /ect/profile 设置生效
4、查看版本
shell
ffmpeg -version
二、错误处理
1、若安装过程中出现以下错误:
yasm/nasm not found or too old. Use --disable-yasm for a crippled build.
If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solve the problem.
需要安装yasm
shell
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar -zxvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure --prefix=/usr/local/yasm
make && make install
#要降目录加到PATH中,否则还是会报错
export PATH="$PATH:/usr/local/yasm/bin"
2、如果出现如下错误
error while loading shared libraries: libavdevice.so.59: cannot open shared object file: No such file or directory
解决办法:将安装的lib加入到/ect/ld.so.conf中,
- 1、vim vi /etc/ld.so.conf
- 2、加入配置/usr/local/ffmpeg/lib,具体看自己的安装目录
- 3、刷新配置ldconfig
3、若出现以下错误:
ffmpeg: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
原因是没有 libiconv.so.2,需要安装
shell
#下载libiconv
wget https://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.16.tar.gz
tar -zxvf libiconv-1.16.tar.gz
cd libiconv-1.16
#编译安装
./configure --prefix=/usr/local
make
make_install
ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2
ldconfig