RestKit 框架的 Xcode 存档错误
Posted
技术标签:
【中文标题】RestKit 框架的 Xcode 存档错误【英文标题】:Xcode archive error with RestKit framework 【发布时间】:2012-07-19 09:27:54 【问题描述】:我刚刚开始使用 Objective C 和 RestKit。
我创建了一个应用程序并添加了 RestKit 项目。我使用 RestKit 从我的网络服务器加载地图 JSON 数据。
应用程序在模拟器和我的 iPhone 设备上运行良好。现在我想创建一个 TestFlight 测试版。我已设置分发证书并将其添加到我的手机和代码签名设置中。
现在我想生成 IPA。我使用 Project 菜单项下的 Archive 选项。当我点击这个按钮时出现以下错误:
Ld: in /Users/japak/Library/Developer/Xcode/DerivedData/AlquinApp-ahkxhlzmjpdjjbczzkyriizvchid/Build/Intermediates/ArchiveIntermediates/AlquinApp/BuildProductsPath/Release-iphoneos/libRestKit.a(RKJSONParserJSONKit.o), mach-o string pool extends beyond end of file for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation)
【问题讨论】:
我没有使用 RestKit 的经验,但我发现在 ios 应用程序中链接到外部库对于归档来说是有问题的。我必须将库合并到我的工作空间中,并将其构建为工作空间的一部分,以便能够对其进行归档。 【参考方案1】:我在 Swift 3/Xcode 8.2 项目中遇到了一些来自 Cocoapods 的动态框架的问题。对构建文件夹(产品->(按住选项键)->清理构建文件夹)的深度清理为我解决了这个问题。
【讨论】:
【参考方案2】:我的解决方案是取消选中“Schemes => Edit Schemes => Builds => Build Options”下的“Parallelize Builds”选项。 (我在 Xcode 6.3 下看到了这个,我相信这个选项在旧版本中也存在)
【讨论】:
【参考方案3】:我认为问题是因为您使用的东西不应该用于分发并且它目前受 NDA 保护?
【讨论】:
我已经删除了 RestKit 库并用 AFNetworking 替换它。现在可以了。 哦,酷。我遇到了和你一样的错误,那是因为我在回答中写的原因。 NDA 下的内容如何影响目标应用程序的构建过程?这个答案对所讨论的错误没有意义。以上是关于RestKit 框架的 Xcode 存档错误的主要内容,如果未能解决你的问题,请参考以下文章
RestKit - Lipo 错误:无法在 Xcode5 中打开输入文件
未找到用于架构 armv7 存档错误 xcode 5.1.1 的金属框架