0

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

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


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

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

从这里下载 FFmpeg 1.0 “天使”

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

打开终端并浏览到解压缩的 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

谁能帮我 ??

4

2 回答 2

1

您在日志中的何处看到此消息?

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

在此之前和之后有哪些消息?

这是全部信息吗?

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

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

于 2012-12-05T19:17:56.720 回答
0

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

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

我希望这可以帮助某人。

于 2013-04-05T11:18:18.143 回答