在linux下编译ffmpeg是完成交叉编译的准备工作,当然交叉编译ffmpeg和在linux下本地编译没有什么必然关系,但是还像想先试一下本地编译的结果,对于初学者来说还是一种挑战,大神勿喷。编译主要包括以下几个部分,只要编译的库有x264,libMP3lame,fdk-aac.
一.准备工作
安装必要的库
apt-get install vimapt-get install nasm
apt-get install libsdl-image1.2-dev
apt-get install libsdl-mixer1.2-dev
apt-get install libsdl-ttf2.0-dev
apt-get install gfx1.2-dev
如果nasm版本过小先卸载
sudo apt-get autoremove --purge nasm
然后下载nasm
然后执行
./configure --prefix=/usr && make
make install
二.YASM安装下载解压进入目录
./configure --prefix=/usr/local/aaa
make
make install
三.SDL安装下载解压进入目录
./configure --prefix=/usr/local/aaa
make
make install
四.安装x264下载解压进入目录
./configure --prefix=/usr/local/aaa --enable-static --enable-shared
make或者sudo make
make install或者sudo make install
五.安装libmp3lame
./configure --prefix=/usr/local/aaa --enable-mp3rtp --disable-static
make
make install
六.安装fdk-aac下载解压进入目录
sudo apt-get install autoconf automake libtool
./aotogen.sh
./configure --prefix=/usr/local/aaa
七.编译ffmpeg下载解压进入目录
vim /etc/ld.so.conf
/usr/local/lib
ldconfig
vim /etc/profile
export PATH=$PATH:/usr/local/aaa/bin
ln -s "/usr/local/aaa/lib/pkg-config" /usr/local/aaa/lib/pkgconfig
export PKG_CONFIG_PATH=/usr/local/aaa/lib/pkgconfig:$PKG_CONFIG_PATH
./configure --prefix=/usr/local/aaa --enable-shared --disable-static --enable-libx264 --enable-libfdk-aac --enable-nonfree --enable-libmp3lame --enable-ffplay --enable-gpl --extra-cflags='-I/usr/local/aaa/include' --extra-ldflags='-L/usr/local/aaa/lib'
make 或者make
make install或者sudo make install