1

我正在尝试在我的项目中使用 Google Analytics iOS,它支持 iOS 4.0 及以上版本,查看 Google Analytics 资源页面我可以看到版本 1.5 他们支持架构armv6而不是armv7,并且在 1.5.1 他们添加了对armv7的支持但是删除armv6

因此,如果我的项目同时支持这两种架构,并且我尝试使用 1.5.1,则会在链接器上收到错误消息:

ld: file is universal (3 slices) but does not contain a(n) armv6 slice: libGoogleAnalytics.a for architecture armv6

如果我从我的项目支持的架构列表中删除 armv6,它编译得很好,可以在设备和模拟器上运行,但是稍后在提交到苹果商店时我会收到一个错误,验证器说:

at least one of the following architectures must be present: armv6.

有没有办法用armv6和armv7创建一个版本的lib?

4

1 回答 1

1

我最终将 iOS 的最低版本(iOS 开发目标)更改为 4.3,因此它通过了验证并提交到苹果商店(4.2.5 及更高版本不需要armv6)。

但是,经过一番研究,我发现是1.5版本(没有tgz的链接,但鉴于最新的1.5.1很容易猜到:http: //dl.google.com/gaformobileapps/GoogleAnalyticsiOS_1.5 .tar.gz )确实包含对armv7的支持,正如他们的更改日志所指出的相反。

通过使用otool,我可以验证静态库中支持的架构,并且项目编译和链接与这个 1.5 版本很好。

于 2012-11-01T05:44:17.033 回答