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

时间:2019-03-28 01:58:38

标签: ios xcode dyld xcode10.2

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

  

dyld:库未加载:/usr/lib/libauto.dylib引用自:   /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation   原因:找不到合适的图像。确实找到了:/usr/lib/libauto.dylib:   mach-o,但不是为iOS模拟器构建的

我尝试不碰任何东西重新创建另一个新项目,将部署目标设置为iOS 9,然后再次在iOS 9模拟器上运行,显示了相同的错误。

更新

似乎仅当您的代码库包含swift时才会出现此问题。用目标C代码库创建一个新项目不会使模拟器崩溃。很快就可以。

摘要

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

有人知道吗?

最终更新

Apple刚刚发布了Xcode 10.2.1,它是模拟器已知问题的一部分,有关变通办法/修复,请参考以下链接:

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

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

9 个答案:

答案 0 :(得分:44)

这是一个已知的影响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'

答案 1 :(得分:5)

在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'

对于该链接中上面给出的解决方案,此苹果。

简单地

->打开终端

->在此行中输入所需的版本(在我的情况下,我从iOS 9.3更改为iOS 9.0)

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

->输入密码

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

上述解决方案对我有用。

答案 2 :(得分:5)

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

答案 3 :(得分:4)

我在iOS11上对iOS12.1Xcode11.1进行单元测试时遇到了这个问题

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

答案 4 :(得分:1)

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

答案 5 :(得分:1)

以上都不对我有用。 我的问题与此相同,但当时正在为macOS开发一个应用。

在我的操作系统为Xcode 11的同时运行10.4项目目标Mojave 10.4.6

我必须安装Xcode 10.3并改用它。此后没有问题。

我的猜测是操作系统Xcode version和项目目标存在问题。

答案 6 :(得分:0)

更新到Xcode 10.3已为我修复。

答案 7 :(得分:0)

在Swift 10.3中仍然会出现此错误。 (跳过10.2。)

答案 8 :(得分:0)

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