我试图编译FFMPEG库的IOS平台与ARM7架构。我从http://www.ffmpeg.org下载了FFMPEG库。试图编译与armv6和arv7架构的iPhoneOS平台的FFMPEG库
我成功地为iPhoneSimulator的i386架构构建了静态库。但我需要iPhoneOS的库。使用配置命令我得到一个错误。以下是我的命令细节。
i386的(这是无差错):
./configure --enable-cross-compile --disable-debug --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-doc --disable-network --disable-everything --enable-protocol=file --enable-demuxer=mov --enable-muxer=mpegts --enable-bsf=h264_mp4toannexb --arch=i386 --target-os=darwin --cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc --as='./gas-preprocessor/gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' --sysroot=/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneOS6.1.sdk --cpu=i386 --extra-cflags='-arch i386' --extra-ldflags='-arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk' --prefix="/Users/amit/Desktop/LivuLib-master/LivuLIb/ffmpeg/bin/newLib"
对ARMv7:
./configure --enable-cross-compile --disable-debug --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-doc --disable-network --disable-everything --enable-protocol=file --enable-demuxer=mov --enable-muxer=mpegts --enable-bsf=h264_mp4toannexb --arch=armv7 --target-os=darwin --cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc --as='./gas-preprocessor/gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' --sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk --cpu=cortex-a9 --extra-cflags='-arch armv7' --extra-ldflags='-arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk' --prefix="/Users/amit/Desktop/LivuLib-master/LivuLIb/ffmpeg/bin/newLib"
对于上述命令ARM7我得到这个错误:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc is unable to create an executable file.
C compiler test failed.
If you think configure made a mistake, make sure you are using the latest
version from SVN.
所以请给我一个可能的解决方案。为什么它不起作用?或者我需要更新任何东西。谢谢。
有关LGPL和iOS不兼容性的信息,请参阅此页面,在尝试在iOS应用程序中使用ffmpeg之前,您需要考虑此问题:[兼容性 - iphone-app-store-and-the-lgpl]( http://multinc.com/2009/08/24/compatibility-between-the-iphone-app-store-and-the-lgpl/)。 – MoDJ 2013-06-19 22:05:10
下面是一个为基于iOS 7.0 SDK(Xcode 5)的iOS 6.1+构建FFmpeg的脚本:https://github.com/renebigot/build_FFmpeg_for_iOS它将构建通用(armv7,armv7s和i386)静态库。 – Massale 2013-10-09 00:11:30
对于那些寻找使用Xcode 5交叉编译iOS平台的ffmpeg库的答案的人,请从http://www.ffmpeg4ios.org/学习构建脚本并修改SDK以获取最新版本。类似的问题http://stackoverflow.com/questions/19092796/build-ffmpeg-with-xcode-5 – 2013-10-01 15:17:08