【问题标题】:Warning: Error creating LLDB target at some path警告:在某个路径创建 LLDB 目标时出错
【发布时间】:2014-11-07 10:52:35
【问题描述】:
我正在 Xcode 6.1 和 iPhone (iOS 8.1) 模拟器上运行应用程序。运行时,我在登录控制台窗口下方:
Warning: Error creating LLDB target at path '/Users/macbook/Library/Developer/Xcode/DerivedData/..Project.app'-
using an empty LLDB target which can cause slow memory reads from remote devices.
如果我在 Xcode 5.x 和 iPhone (iOS 7.x) 模拟器中运行应用程序,那么控制台上没有这样的日志。
可能是什么原因?如果我将应用上传到应用商店会不会有问题。
【问题讨论】:
标签:
console
warnings
lldb
xcode6.1
ios8.1
【解决方案1】:
此警告主要用于 iOS 设备调试。在那个环境中,Xcode 将设备的库和框架复制到 Mac 上,并将它们保存在 lldb 的目录中。当您启动调试会话并且 lldb 看到您的应用程序正在使用 Foundation 框架时,它可以在 Mac 上读取副本 - 否则它将不得不从缓慢的 iOS 调试会话中读取内存中的副本。
为什么你会在一些模拟器调试配置中看到这种情况,我不能说;这不是预期的。但是对于 Mac 本机进程调试会话(就像您正在使用 iOS 模拟器调试一样),它是无害的 - lldb 从本地 mac 内存中读取它的性能成本非常小。
上传到商店时绝对不会对您的应用产生任何影响。这完全是 Xcode/lldb 缓存问题,与您的应用无关。
【解决方案2】:
通过更改构建设置可以解决此警告:
- 选择项目 -> 构建设置
将 'Architectures' 更改为 'Standard architectures (armv7, arm64) - $(ARCHS_STANDARD)'
这将提示一条警报,说明支持 iOS 5.1.1 及更高版本。点击'将部署目标更改为 5.1.1'
- 对 Target 重复步骤(如果未自动更改)
此外,这是首选的构建设置,因为 Apple 强制开发人员在 64 位架构上构建应用。 Apple document Link
【解决方案3】:
当您使用 Architectures=$(ARCHS_STANDARD_32_BIT) 并在 64 位设备上运行您的应用时,它会导致。
可以通过在构建设置中将 'Architectures' 设置为 'Standard architectures (armv7, arm64) - $(ARCHS_STANDARD)' 来解决
【解决方案4】:
那么当您在 iPhone 5S 或最新设备/模拟器上调试时收到此警告时,是否可以将应用程序提交到应用商店?我听说如果你没有任何理由不升级到 64 位拱门,苹果可以拒绝你的应用程序。
任何方式 -
此警告的解决方案是 Standard Architectures(armv7,arm64) 而不是 $(ARCHS_STANDARD_32_BIT)
但请记住,只有当您的所有 pod、框架也支持此功能或您必须升级它们时,它才会支持您的应用程序。 (有时这不是一件容易的事。)
毗湿奴