4

我有一个应用程序在 Xcode 4.2 的模拟器中完美运行

要构建和归档以发布到应用商店,我收到一条错误消息,表明我需要包含 armv6 构建。论坛建议清除构建目标并包括我所做的“armv6 armv7”。使用 iOS 3.0 的 iOS 部署目标

当我连接我的 test-iPod 并开始存档操作(RELEASE build)时,我收到以下错误:

忽略文件 /xxx/Release-iphoneos/libThree20UICommon.a,文件是为存档而构建的,它不是被链接的架构(armv6)(重复所有 Three20 库)

“_OBJC_CLASS_$_TTTableViewDataSource”,引用自:ContactsDataSource.o 中的 Objc-class-ref

我尝试更改“仅构建活动架构”,它可以工作但不包括 appstore 的 armv6。

有人遇到并解决了这个问题吗?

谢谢!蒂姆

4

4 回答 4

1

我发现解决方案更改了资源中的 Three20.bundle 文件,而不仅仅是 Three20 的项目文件。

将“Bu​​ild Active Architecture Only”设置为“No”,生活又亮了。

于 2011-11-24T12:37:14.257 回答
1

我发现通过并将“架构”(不是“有效拱门”)设置为“armv6 armv7”为我解决了这个问题。乏味,因为您必须对 Three20 的依赖项文件夹中的每个子项目执行此操作,但成功了。

于 2012-05-22T20:35:01.687 回答
0

我现在没有我的 mac,但我认为你还需要在 plist 中包含 armv6。

于 2011-11-23T14:34:35.757 回答
0

我不得不将项目格式从 Xcode 3.1 更改为 Xcode 3.2 - 仅将 Build Active Arch 保留为“否”

于 2012-07-03T06:58:23.200 回答