自从升级到 XCode + iOS 6的环境后, 项目编译满屏飘红(Error), 与ffmpeg相关的静态链接库全部报错误:
xcode 写道
File was built for archive which is not the architecture being linked (arm7s)
之后在 stackoverflow 上找到了解决方法:
XCode -> Project Setting -> BuildSettings -> Build Active Architechure Only 从No改成Yes .
到这里, 问题算是解决了, 但是为什么会产生这个错误, 是需要思考的问题.
"armv7s" 好像是个新架构, iphone 5 用的是 A6 处理器 + iOS 6 系统. 从这点出发, 经过google之后, 明确 armv7s 指iphone5 中用的A6处理器的架构.
之前编译 ffmpeg 的时候, iphone5 还没出, 采用的环境配置是: armv6, armv7. 所以在新的Standard(armv7, armv7s) 模式下编译不通过.
Build Active Architechure Only 改成 YES, 只编译当前可用的版本(我查的是ipad2 - armv7), 这样能够暂时解决这个问题.
如果要彻底解决, 还是要重新编译 ffmpeg.