在10.8上安装ffmpeg ios库armv7,armv7s,i386和mac
我如何安装最新的ffmpeg ios库armv7,armv7s,i386和通用10.8 Mac?
几天后,我已经为这个安装做了一步一步的指示:
FFmpegbuild立指令MAC 10.8或更高
复制ffmpeg-2.0.tar.bz2( https://ffmpeg.org/releases/ffmpeg-1.0.7.tar.bz2,https://ffmpeg.org/download.html )和解压缩到文档文件夹
确保在Xcode>下有最新的命令行工具; 首选项>; 下载>; 组件
安装气体预处理器
- 点击ZIP图标下载https://github.com/mansr/gas-preprocessor 。
- 将gas-preprocessor.pl复制到/ usr / bin目录。
- 更改gas-preprocessor.pl的权限,方法是将所有权限设置为Read&Write。
从版本10.8开始的xcrun中的错误
打开terminal并粘贴下面的命令,然后按回车:
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer/"
cd到ffmpeg-2文件夹并粘贴在下面的命令,然后按回车:
mkdir armv7 mkdir armv7s mkdir i386 mkdir -p universal/lib
要configurationarmv7s库粘贴在下面的命令,然后按回车:
./configure --prefix=armv7s --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-avresample --enable-cross-compile --sysroot="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk" --target-os=darwin --cc="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc" --extra-cflags="-arch armv7s -mfpu=neon -miphoneos-version-min=6.1" --extra-ldflags="-arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk -miphoneos-version-min=6.1" --arch=arm --cpu=cortex-a9 --enable-pic
(注意与上面相同的规则:如果configuration失败进入Applications / Xcode.app / Contents / Developer / Platforms / iPhoneOS.platform / Developer / SDKs /并且确保sdk文件夹是iPhoneOS6.1.sdk,如果没有更改config命令反映iPhoneOSx.x.sdk并将所有目标更改为xx)
要build立和安装armv7s库粘贴在下面的命令,然后按回车:
make clean && make && make install
要configurationi386(所以模拟器将工作)库粘贴在下面的命令,然后按回车:
./configure --prefix=i386 --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-avresample --enable-cross-compile --sysroot="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk" --target-os=darwin --cc="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc" --extra-cflags="-arch i386" --extra-ldflags="-arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk" --arch=i386 --cpu=i386 --enable-pic --disable-asm
(注意:这和前面的两个configuration命令不一样,如果你只是向上箭头就会失败)
在下面的命令中build立和安装i386库粘贴,然后按回车:
make clean && make && make install
要使通用库(即将库添加到xcode)粘贴到以下命令中,然后按Enter键:
cd armv7/lib for file in *.a do cd ../.. xcrun -sdk iphoneos lipo -output universal/lib/$file -create -arch armv7 armv7/lib/$file -arch armv7s armv7s/lib/$file -arch i386 i386/lib/$file echo "Universal $file created." cd - done cd ../..
支持iOS7和XCode5的通用ffmpeg库:
确保在Xcode>下有最新的命令行工具; 首选项>; 下载>; 组件
安装气体预处理器
- 点击ZIP图标下载https://github.com/mansr/gas-preprocessor 。
- 将gas-preprocessor.pl复制到/ usr / bin目录。
- 更改gas-preprocessor.pl的权限,方法是将所有权限设置为Read&Write。
从https://gist.github.com/m1entus/6983547下载我的shell脚本
- 运行
sh build-ffmpeg.sh
。
我需要arm64的支持,这个脚本为我工作: https : //github.com/kewlbear/FFmpeg-iOS-build-script
使用
./build-ffmpeg.sh arm64 x86_64
适用于iOS 64位和模拟器架构。 然后将“fat”目录中的内容复制到Xcode项目中。
我对这个脚本进行的唯一修改就是取消注释这一行:
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-avresample"
编译libavresample库。
编辑:这不是使用armv7和armv7s,但使用iOS 7.1 SDK。 如果我find解决scheme,我会在这里发布。
为了构buildffmpeg iOS库,你可以使用这个小脚本 。
- 下载ffmpeg源码
- 下载https://github.com/wang-bin/build_ffmpeg
- 打开terminal并运行
export FFSRC=/path/to/ffmpeg
- 转到
build_ffmpeg
文件夹并运行:./ios.sh
- 成功build设后,结果将在
sdk-ios
文件夹中 - 在你的Xcode项目中添加include文件夹和lib文件夹