版本Ubuntu 10.10,參考了網上了一些編譯方法
1、下載git,根據官方文檔,下載編譯ffmpeg需要git實現,所以下載git,命令:
sudo apt-get install git git-core
更新git到最新版本,命令:
git clone git://git.kernel.org/pub/scm/git/git.git
查看安裝的git版本,命令:
git --version
2、下載ffmpeg,命令:
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
現在已經下載了ffmpeg的源代碼,可以先打包成壓縮包備份,命令:
tar czf ffmpeg.tar.gz ffmpeg/
以後需要的時候可以直接提取,命令:
tar xzf ffmpeg.tar.gz
3、c/c++程序環境的搭建(已經搭建過的就不需要了)
安裝vim編輯器
apt-get install vim
安裝c/c++編譯工具,包括“gcc,g++,gdb,make”
apt-get install build-essential
可以使用“gcc -v”來檢查是否安裝成功
安裝自動生成makefile的相關工具,命令:
apt-get install automake1.9
這樣,依賴的工具也會被安裝,包括autoscan、aclocal、autoconf、automake等。有了這些工具,在大的開發項目中,就可以不用自己去編寫makefile了。
4、安裝依賴庫:命令:
sudo apt-get install subversion checkinstall yasm texi2html libfaac-dev libfaad-dev libmp3lame-dev libsdl1.2-dev libtheora-dev libx11-dev libxvidcore4-dev zlib1g-dev
注:網上編譯ffmpeg的帖子中用的依賴庫都不一樣,我也不知道到底用哪些好
5、裝x264(需要通過源碼進行安裝),命令:
$git clone git://git.videolan.org/x264.git
$cd x264
$./configure
$make
$sudo make install
6、編譯ffmpeg
進入到ffmpeg目錄下面
./configure --enable-gpl --enable-libmp3lame --enable-libxvid --enable-libfaac --enable-nonfree --enable-shared --enable-static --prefix=/usr/local/ffmpeg
注:--enable-shared 是允許其編譯產生動態庫,那麼--enable-static 應該是產生靜態庫,在以後的編程中要用到這個幾個動態庫。--prefix設置的安裝目錄
注意:
最後編譯完成,在/usr/local/ffmpeg會看到有四個目錄
lib 動態鏈接庫位置
include 編程要用到頭文件
bin 執行文件所在的目錄
還有個share文件夾
為了以後方便編程,我們把lib中的so文件(so文件相當於動態庫文件dll,o文件相當於編譯的目標文件,a文件是靜態庫)復制到/usr/lib下。把include目錄下的ffmpeg目錄復制到/usr/include下
編譯成功之後,執行的時候還是需要動態庫的支持,還是要把那三個動態庫文件復制到/usr/lib或者/lib中,不然執行的時候會說找不到動態庫鏈接。還有一個方法可以解決這個問題,就是把/usr/local/ffmpeg/lib這個目錄加入到/etc/ld.so.config中,然後執行ldconfig,或者重啟電腦,這樣執行的時候系統就可以從/usr/local/ffmpeg/lib這個目錄下去找這三個動態庫文件了
網上使用的依賴庫和configure命令:
1、
sudo apt-get install build-essential libgtk2.0-dev libjpeg62-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-libfaac --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libxvid --enable-x11grab --enable-swscale --enable-shared
2、
sudo apt-get install build-essential libxvidcore4-dev libfaad-dev libfaac-dev libmp3lame-dev subversion
./configure --enable-gpl --enable-libmp3lame --enable-libxvid --enable-libfaac --enable-nonfree