3

我昨天更新了我的 iphone4s 和 xcode 到最新的。由于我的应用程序使用硬件通信,因此我正在尝试在手机上调试我的应用程序。我正在使用 Redpark 的第三方库(该公司提供 Dock 到 RS232 线。)在编译时,它给出了一个错误

ld: file is universal (2 slices) but does not contain a(n) armv7s slice:/Users/...../libRscMgrUniv.a for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)

除了等待 Redpark 更新那里的库外,有谁知道如何解决这个问题?

4

2 回答 2

16

您可以通过将(评估为现在的)值替换为显式值来简单地禁用armv7s构建设置中的编译。$VALID_ARCHITECTURESarmv7 armv7sarmv7

因此,您的应用程序只会构建armv7而不是构建armv7s,因此不会针对新 iPhone5 进行完全优化,但它仍然可以在 iPhone 4 和 5 上运行(iPhone 5 的armv7s处理器可以执行armv7应用程序,只是没有优化带有armv7s处理器专用指令)

于 2012-09-21T16:29:59.263 回答
3

我又进行了一次搜索,发现两种解决方案对我有用。 Dafna 1. 转到目标设置 -> 构建设置 -> 仅构建活动架构 -> 更改为 NO。2.仍然在Build Settings -> Valid Architecture -> delete armv7s。

他们都为我工作。如果你有同样的问题,一定要先试试这个。

于 2012-09-21T16:32:13.437 回答