Xcode 5 环境下编译 ffmpeg 库

来源:互联网 发布:关于化学的软件 编辑:程序博客网 时间:2024/05/19 10:35

1、要安装xcode命令行工具,

2、xcode5以前都是gcc编译的,在xcode5以后都是clang编译,在脚本中有所体现

3、xcode5以前还要下载gas-preprocessor.pl脚本包,然后使用cp命令拷贝到usr/bin下面,在xcode5以后是不需要下载这个gas-preprocessor.pl脚本

脚本中的黄色字体显示编译器的路径,这个和xcode5以前是不一样的

i386的编译:

./configure --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-avresample --enable-cross-compile --sysroot="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk" --target-os=darwin --cc="/Applications/Xcode.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/Xcode.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

如果提示失败,请在脚本前面加sudo再次执行。

执行make

在执行make install命令,如果执行失败,请使用sudo make install

这样就生成.a文件包,其中产生警告,不用管。

把.a文件拷贝出来后,在执行make clean命令

下面是arm7脚本

sudo ./configure --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-cross-compile --sysroot="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk" --target-os=darwin --cc="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" --extra-cflags="-arch armv7" --extra-ldflags="-arch armv7" --extra-ldflags=-L/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/lib/system --arch=arm --cpu=cortex-a8 --enable-pic  --disable-asm --disable-everything --enable-decoder=h264 --enable-decoder=rv40 --enable-decoder=aac

1、make

2、make install 如果执行失败,请使用sudo make install

3、make clean

下面是arm7s脚本

sudo ./configure --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-cross-compile --sysroot="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk" --target-os=darwin --cc="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" --extra-cflags="-arch armv7s -mfpu=neon -miphoneos-version-min=7.0" --extra-ldflags="-arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -miphoneos-version-min=7.0" --arch=arm --cpu=cortex-a9 --enable-pic  --disable-asm --disable-everything --enable-decoder=h264 --enable-decoder=rv40 --enable-decoder=aac

1、make

2、make install 如果执行失败,请使用sudo make install

3、make clean

lipo -create /Users/zhangl/Desktop/ffmpeg/sim/libswscale.a /Users/***/Desktop/ffmpeg/arm7/libswscale.a /Users/***/Desktop/ffmpeg/arm7s/libswscale.a -output /Users/***/Desktop/ffmpeg/ios/libswscale.a

使用lipo -create  文件名   -output  文件名

这个将i386,arm7和arm7s合并成一个.a文件

使用lipo -info /Users/**/Desktop/ffmpeg/ios/libswscale.a

Architectures in the fat file: /Users/***/Desktop/ffmpeg/ios/libswscale.a are: i386 armv7 armv7s 

lipo -info命令查看.a包属性

0 0