为iOS6.0构建Ffmpeg库ARMv7处理器成功但编译错误

时间:2012-11-05 14:13:48

标签: ffmpeg ios6

我正在尝试在XCode 4.5.1项目中使用FFMPEG库。 我正在尝试为ARMv7构建它。

我已经使用下面的方法构建了库(由Alex提供):


这是我的工作配置在iOS 6上交叉编译FFmpeg,拱门是ARMv7

注意:您必须在/ usr / local / bin /中有gas-preprocessor.pl,在bin目录中有gas-preprocessor.pl之前请不要继续

从这里下载FFmpeg 1.0“Angel”

解压缩并将其放置在某个位置,即桌面文件夹

打开终端并浏览到解压缩的FFmpeg文件夹

复制并粘贴以下命令(耐心等待一段时间)

./configure --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffserver --enable-cross-compile --arch=arm --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=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk --cpu=cortex-a8 --extra-cflags='-arch armv7' --extra-ldflags='-arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk' --enable-pic --enable-decoder=rawvideo --disable-asm

现在在终端make上输入以下命令(稍等一会儿)

现在完成后输入终端sudo make install(再次等待)

转到/usr/local/lib查找新近出炉的armv7图书馆

享受!

亚历


但是当我把库放到iFrameExtractor然后编译它,然后我得到一个错误

  

/ffmpeg/libavcodec/4xm.d:1:“xm”附近的语法错误

我的编译环境是

xcode 4.5.1和ffmpeg 1.0

平台:Mac OS X 10.7.5

谁能帮助我?

2 个答案:

答案 0 :(得分:1)

您在日志中的哪个位置看到此消息?

ffmpeg/libavcodec/4xm.d:1: syntax error near "xm"

此前后有什么消息?

这是整个信息吗?

如果您不介意使用1.0之前的FFmpeg版本,那么您可以使用我们的FFmpeg框架:https://github.com/mooncatventures-group/iFrameExtractor

如果您仍想构建1.0,那么请告诉我们更多错误。您发布的错误消息没有提供足够的详细信息来处理。

答案 1 :(得分:0)

为此你正在使用Gcc编译器。在为iPhoneSimulator构建库时,最好使用Gcc编译器。但是现在你正在尝试为iPhoneOS构建库,所以这意味着你的硬件平台将会改变(armv6或armv7或armv7s)。为此你需要使用apple的gcc交叉编译器来实现armv处理器。

例如:arm-apple-darwin10-llvm-gcc-4.2 或尝试一次:llvm-gcc也。

我希望这可以帮助别人。