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

问题描述 投票:37回答:3

自从更新后我正在玩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模拟器上运行,显示相同的错误。

UPDATE

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

摘要

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

任何人有任何想法?

最终更新

Apple刚刚发布了Xcode 10.2.1,它是模拟器已知问题的一部分,请参考下面的链接获取解决方法/修复:

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

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

ios xcode dyld xcode10.2
3个回答
60
投票

这是影响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'

6
投票

在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并再次运行

以上解决方案对我有用。


1
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.