Xcode 10.2 无法在模拟器上 运行 应用 iOS < 10

Xcode 10.2 Failed to Run App on Simulator with iOS < 10

自更新以来我一直在玩 Xcode 10.2,当我尝试 运行 我的应用程序在 iOS 版本低于 10 的任何模拟器上时,模拟器将无法启动然后崩溃然后显示以下错误:

dyld: Library not loaded: /usr/lib/libauto.dylib Referenced from: /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation Reason: no suitable image found. Did find: /usr/lib/libauto.dylib: mach-o, but not built for iOS simulator

我尝试在不接触任何东西的情况下创建另一个新项目,将部署目标设置为 iOS 9 并再次在 iOS 9 模拟器上设置 运行,显示相同的错误。

更新

似乎只有当您的代码库包含 swift 时才会出现此问题。使用 objective c 代码库创建了一个新项目并没有使模拟器崩溃。对于 swift 是的。

摘要

  1. Xcode 10.2 包含 swift 代码无法 运行 模拟器上的应用 iOS 9
  2. 我已完成所有清理和删除派生数据,但问题仍然存在。

有人知道吗?

最终更新

Apple 刚刚发布 Xcode 10.2.1,这是模拟器已知问题的一部分,请参阅下面的 link workaround/fix:

https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_1_release_notes

感谢@russbishop 的回复,接受回答

一个相当烦人的解决方法:暂时使用 Xcode 10.1 在 9.x 模拟器上部署。这是我能够解决这个问题的唯一方法。

这是影响 iOS 8.x 和 9.x 的已知错误。您可以通过在相关模拟器运行时根目录中创建 /usr/lib/swift 目录来解决这个问题。

下载的模拟器运行时位于/Library/Developer/CoreSimulator/Profiles/Runtimes

例如,要修复 iOS 9.3 模拟器:

sudo mkdir '/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.3.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift'

我在 iOS 9.0 模拟器中 运行 时也遇到了同样的问题。

来自https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_1_release_notes

iOS 9.3 及更早版本的模拟器可能无法启动 Swift 应用程序并显示消息:“dyld:库未加载:/usr/lib/libauto.dylib”。 (49326587) 解决方法:运行 在终端中针对 iOS 的相关版本执行以下命令:

sudo mkdir '/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.3.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift'

对于这个苹果,上面给出了解决方案 link。

简直

--> 打开终端

--> 在这一行中输入你需要的版本(在我的例子中,我将 iOS 9.3 改为 iOS 9.0)

例如: sudo mkdir '/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.0.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift'

--> 输入密码

--> 现在再次清理 Xcode 和 运行

上述解决方案对我有用。

更新到 Xcode 10.3 已经为我修复了它。

在 Xcode 10.3 中仍然遇到此错误。 (跳过 10.2。)

这似乎是一个 iOS 模拟器错误。我看到这种情况发生在 iOS 12.0 的模拟器上,但在 12.4.

的模拟器上没有

None 以上对我有用。 我的问题与此相同,但正在为 macOS.

构建应用程序

运行 Xcode 11 项目目标 10.4 而我的 OS 是 Mojave 10.4.6

我不得不安装 Xcode 10.3 并改用它。之后没有问题。

我猜是 OS、Xcode version 和项目目标有问题。

必须使用 Xcode 10.2.1 我在另一个库中遇到了这个问题,最终不得不在构建设置中将始终嵌入 swift 库设置为 YES,因为有问题的库位于我有框架文件。

当我在 Xcode11.1

上对 iOS11iOS12.1 进行单元测试时,我 运行 遇到了这个问题

解决方案是 运行 使用 iOS13 模拟器进行单元测试。