今天想在Mac10.9 XCode5的環境下把ffmpeg編譯出來,本來以為很好搞定,結果版本一升級,以前的命令行不通了,出各種錯誤。折騰了三四個小時,最后終於成功了。
編譯流程:
1.ffmpeg官網下載ffmpeg源代碼,並解壓。
2.從命令行進入ffmpeg目錄,輸入以下腳本:
模擬器版本:
./configure --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-avresample --enable-cross-compile --sysroot="/Applications/Xcode5-DP5.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk" --target-os=darwin --cc="/Applications/Xcode5-DP5.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" --extra-cflags="-arch i386 -mfpu=neon -miphoneos-version-min=7.0" --extra-ldflags="-arch i386 -isysroot /Applications/Xcode5-DP5.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk -miphoneos-version-min=7.0" --arch=i386 --cpu=i386 --enable-pic --disable-asm --enable-decoder=h264 --enable-decoder=rv40
(上面紅色的地方需要替換成不同機器中xcode的具體路徑,綠色的部分表示支持h264和rmvb的解碼,不加rv40這個就無法播放rmvb視頻)
3. 輸入make命令
4. make install (生成的結果在/usr/local里面)
真機版本:(時間有限下次補充)
注意, 這個命令與網上已有的很多xcode編譯ffmpeg教程的區別在於:
1. 以前需要gas-preprocessor.pl這個文件,但經過測試,在XCode4環境下是需要的,XCode5環境下已經不需要了。
2. XCode4環境下,--cc的路徑是gcc的路徑,但現在XCode5里面需要clang的路徑。
3. 多了一個-miphoneos-version-min=7.0,沒有這個字段會出一個動態庫錯誤,具體可以自己試試。