【问题标题】:Xcode 4.2 and Three20 wont compile armv6Xcode 4.2 和 Three20 不会编译 armv6
【发布时间】:2012-01-04 19:36:08
【问题描述】:

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

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

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

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

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

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

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

谢谢! 蒂姆

【问题讨论】:

    标签: xcode three20 armv7 armv6


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      我发现通过并将“架构”(不是“有效架构”)设置为“armv6 armv7”为我解决了这个问题。繁琐,因为你必须对 Three20 的依赖文件夹中的每个子项目都这样做,但是成功了。

      【讨论】:

        【解决方案3】:

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

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

        【讨论】:

        • 嗯,不幸的是它没有帮助我
        【解决方案4】:

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

        【讨论】:

        • 这并没有解决我的问题:我尝试在目标构建中添加“armv6 armv7”,更改编译器,...无济于事。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-24
        • 1970-01-01
        相关资源
        最近更新 更多