【问题标题】:Xcode 7.1 PrototypeTools Linker Error (on simulator only)Xcode 7.1 PrototypeTools 链接器错误(仅在模拟器上)
【发布时间】:2016-01-25 15:40:39
【问题描述】:

我正在尝试使用 Xcode 7.1 在 iOS 模拟器中运行我的应用程序,但出现链接器错误。这是错误:

ld: file not found: /System/Library/PrivateFrameworks/PrototypeTools.framework/PrototypeTools for architecture x86_64

clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

这似乎是一个新问题,因为在升级到新的 Xcode(支持新发布的 iOS 9.1 的开发)之前我没有它。我在 Google 上搜索过,但几乎没有与此问题相关的线程。有趣的是,该应用在设备上运行良好。

我尝试过重置模拟器并再次清理/构建,但都没有成功。有没有其他人遇到过这个问题,您能提供任何建议吗?

【问题讨论】:

  • 你在使用 pod 吗?错误说缺少框架。尝试删除它并重新添加框架
  • 嗨@Mr.T,我正在使用Pods。但我没有使用任何名为“PrototypeTools”的框架。我到底应该删除/添加什么?我应该重新安装所有的 pod 吗?谢谢!
  • 尝试移除 pod 或更新 pod!!!
  • 嗨,我删除并更新了所有 pod,但仍然遇到同样的错误。
  • 这是否会在以前版本的 iOS 模拟器(即 8.4)上出现错误?

标签: ios build frameworks linker build-error


【解决方案1】:

如果您确定不需要PrototypeTools.framework,您可以按照以下步骤将其删除:

TARGETS -> "Your Project" -> Build Phases -> Link Binary With Libraries

找到PrototypeTools.framework,将其删除。

如果您不确定是否需要PrototypeTools.framework

1.PrototypeTools.framework可能是第3个静态库了,去搜一下最新的库,下载下来换新的,再试试。
2.如果你不需要在模拟器上做某事,你不需要关心它,忽略它。

.framework 是一种静态库,如果.framework 的开发者在构建静态库时对Architecture 不太关心的话,某些Architecture 将不被支持。

x86_64 Architecture 仅用于模拟器。通常静态库.framework 不需要支持,因为我们测试我们的应用程序并在真机上运行我们的应用程序,这会增加.framework 的大小静态库,但有些静态库支持大部分Architecture,无论是模拟器还是真机。

【讨论】:

  • 嗨,有趣的是我什至没有将 PrototypeTools 添加为框架。它未列在“将二进制文件与库链接”下。
  • 如果出现这种情况,可以到文件夹中查看是否有这个。
  • /System/Library/PrivateFrameworks/PrototypeTools.framework/PrototypeTools
  • PrivateFrameworks 文件夹中没有 PrototypeTools 框架。
猜你喜欢
  • 2011-02-01
  • 1970-01-01
  • 2016-01-21
  • 1970-01-01
  • 2015-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-25
相关资源
最近更新 更多