編譯模擬器版本
1 到https://github.com/yuvi/gas-preprocessor下載gas-preprocessor.p並拷貝到/usr/sbin目錄中
2 下載ffmpeg源碼。
http://ffmpeg.org/download.html
https://github.com/FFmpeg/FFmpeg
3 解壓源碼,cd到源碼目錄下
4 建立檔案config_i386.sh,其內容如下
#!/bin/tcsh -fset targetDir="../ffmpeg-libs/i386"if (! -d $targetDir ) mkdir $targetDirrm -f $targetDir/*.amake clean#./configure --arch=i386 --extra-cflags='-arch i386' --extra-ldflags='-arch i386' --disable-encoders --disable-debug --disable-mmx./configure \--cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc \--as='gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc' \--nm="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/nm" \--sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk \--target-os=darwin \--arch=i386 \--cpu=i386 \--extra-cflags='-arch i386 -miphoneos-version-min=4.3 -mdynamic-no-pic' \--extra-ldflags='-arch i386 -miphoneos-version-min=4.3 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk' \--prefix=compiled/i386 \--enable-cross-compile \--enable-nonfree \--enable-gpl \--disable-armv5te \--disable-swscale-alpha \--disable-doc \--disable-ffmpeg \--disable-ffplay \--disable-ffprobe \--disable-ffserver \--disable-asm \--disable-debugmakemv libavcodec/libavcodec.a $targetDirmv libavdevice/libavdevice.a $targetDirmv libavformat/libavformat.a $targetDirmv libavutil/libavutil.a $targetDirmv libswscale/libswscale.a $targetDir
5 執行config_i386.sh進行配置和編譯
編譯完成後,可以在$targetDir找到相應的靜態庫檔案
編譯真機版
前3步同上
第4步:建立檔案config_armv7,其內容如下
#!/bin/tcsh -fset targetDir="../ffmpeg-libs/armv7"if (! -d $targetDir ) mkdir $targetDirrm -f $targetDir/*.amake clean./configure \--cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc \--as='gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' \--nm="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/nm" \--sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk \--target-os=darwin \--arch=arm \--cpu=cortex-a8 \--extra-cflags='-arch armv7 -miphoneos-version-min=4.3 -mdynamic-no-pic' \--extra-ldflags='-arch armv7 -miphoneos-version-min=4.3 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk' \--prefix=compiled/armv7 \--enable-cross-compile \--enable-nonfree \--enable-gpl \--disable-armv5te \--disable-swscale-alpha \--disable-doc \--disable-ffmpeg \--disable-ffplay \--disable-ffprobe \--disable-ffserver \--disable-asm \--disable-debugmakemv libavcodec/libavcodec.a $targetDirmv libavformat/libavformat.a $targetDirmv libavutil/libavutil.a $targetDirmv libswscale/libswscale.a $targetDir
第5步:
執行config_armv7進行配置和編譯,編譯完成後可以在$targetDir找到相應的靜態庫檔案