首先在FFMEPG官网下载最新的FFMPEG的版本https://ffmpeg.org/download.html
下载的源码文件最新版,我这里下载的是4.0.2版本:https://ffmpeg.org/releases/ffmpeg-4.0.2.tar.bz2
上传至服务器之后进行解压操作:tar xvfj ffmpeg-4.0.2.tar.bz2
解压之后进入解压目录:cd ffmpeg-4.0.2
编译安装:./configure --enable-shared --prefix=/usr/local/ffmpeg
--enable-shared是允许其编译时产生动态库,在以后的开发过程中会用到这几个动态库
--prefix=/usr/local/ffmpeg 指定安装的路径
但是多数人在执行的时候会报如下错误:
:
解决:
这个错误说明服务器的yasm或者nasm版本过低过或者没有安装;
要解决这个问题很简单 安装对应的版本!
网站下载一个yasm,上传至服务器
如果yum库里面有yasm的话,直接执行yum install yasm
没有的话下载: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
make
make install
安装yasm之后在进行安装ffmpeg就不会报上述错误
然后继续安装ffmpeg:
./configure --enable-shared --prefix=/usr/local/ffmpeg
make
make install
安装完成后,会在/usr/local/ffmpeg目录下生成相对应的目录则表示安装成功了
测试是否安装成功:/usr/local/ffmpeg/bin/ffmpeg -version
原因是相应的库文件没有找到
原因是相应的库文件没有找到
解决办法:
修改文件/etc/ld.so.conf 内容增加/usr/local/ffmpeg/lib/
依次敲:
vi /etc/ld.so.conf
a (vim编辑器下的插入操作)
/usr/local/ffmpeg/lib/
ZZ (保存退出)
为使修改生效
ldconfig
然后执行:/usr/local/ffmpeg/bin/ffmpeg -version
结果如下:
表示安装成功了
最后配置环境变量,使ffmpeg在如何目录下都可以执行
export PATH=/usr/local/ffmpeg/bin/:$PATH
env
如果想要使配置永久生效 :将配置写在profile中
vi /etc/profile
在尾部添加:export PATH=/usr/local/ffmpeg/bin/:$PATH
重启服务器即可!
export PATH="/usr/local/ffmpeg/bin:$PATH"
export PKG_CONFIG_PATH="/usr/local/ffmpeg/lib/pkgconfig"
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
若make的时候,报以下错误
进入安装目录:/home/soft/ffmpeg-4.0.2/ffbuild, 修改config.mak文件
#config.mak L75加入 -fPIC,然后重新编译#直接替换,顺序可能不一样
HOSTCFLAGS=-O3 -g -std=c99 -Wall -fPIC
//第二种方法:Makefile的文件里CFLAGS的参数加上-fPIC
添加动态链接库配置
echo '/usr/local/lib' >> /etc/ld.so.conf.d/local.conf
#更新缓存ldconfig