Xcode 10.2 App auf Simulator mit iOS <10 konnte nicht ausgeführt werden


76

Ich habe seit dem Update mit Xcode 10.2 herumgespielt und wenn ich versuche, meine App auf einem Simulator mit einer iOS-Version unter 10 auszuführen, startet der Simulator nicht und stürzt ab. Dann wird der folgende Fehler angezeigt:

dyld: Bibliothek nicht geladen: /usr/lib/libauto.dylib Referenziert von: /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation Grund: Kein geeignetes Bild gefunden. Habe gefunden: /usr/lib/libauto.dylib: mach-o, aber nicht für iOS-Simulator erstellt

Ich habe versucht, ein neues Projekt neu zu erstellen, ohne etwas zu berühren, das Bereitstellungsziel auf iOS 9 festgelegt und erneut auf dem iOS 9-Simulator ausgeführt. Der gleiche Fehler wurde angezeigt.

AKTUALISIEREN

Es scheint, dass dieses Problem nur auftritt, wenn Ihre Codebasis Swift enthält. Das Erstellen eines neuen Projekts mit objektiver c-Codebasis hat den Simulator nicht zum Absturz gebracht. Für schnelles ja.

ZUSAMMENFASSUNG

  1. Xcode 10.2 enthält schnellen Code, der die App auf dem Simulator mit iOS 9 nicht ausführen kann
  2. Ich habe alle Bereinigungs- und Löschdaten durchgeführt und das Problem besteht weiterhin.

Hat jemand eine Idee?

ENDGÜLTIGES UPDATE

Apple hat gerade Xcode 10.2.1 veröffentlicht und es ist Teil des bekannten Problems für den Simulator. Informationen zur Problemumgehung / Korrektur finden Sie unter dem folgenden Link:

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

Schätzen Sie die Antwort von @russbishop, die Antwort wird akzeptiert


Ich habe genau das gleiche Problem, die gleiche Xcode-Version. Versuchte Reinigung / Neuinstallation. Ich habe sogar etwas Magie mit der Bereitstellung von Profilen / Zertifikaten versucht. Funktioniert immer noch nicht.
Konstantin

Gilt dieser Fehler nur für den Simulator oder tritt er auch auf einem iOS 9.3-Gerät auf?
Bridger Maxwell

Es funktionierte mit dem realen Gerät 9.3.5. Aber nicht mit dem Simulator arbeiten.
Ko2ic

Sehr guter Bericht, danke, dass Sie bis zur Auflösung dabei geblieben sind.
Matt

Antworten:


110

Dies ist ein bekannter Fehler, der iOS 8.x und 9.x betrifft. Sie können dies umgehen, indem Sie /usr/lib/swiftVerzeichnisse im entsprechenden Simulator-Laufzeitstamm erstellen .

Heruntergeladene Simulatorlaufzeiten befinden sich in /Library/Developer/CoreSimulator/Profiles/Runtimes.

So beheben Sie beispielsweise den iOS 9.3-Simulator:

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

7
Stellen Sie vor dem Ausführen von mkdir sicher, dass die 'iOS 9.3.simruntime' noch nicht vorhanden ist. Für mich fehlte im Ordner '... / RuntimeRoot / usr / lib / swift' der Ordner 'swift'. Navigieren Sie einfach zu '/ Library / Developer / CoreSimulator / Profiles / Runtimes / iOS 9.3.simruntime / Contents / Resources / RuntimeRoot / usr / lib' und erstellen Sie ein Verzeichnis für 'swift', um das Problem zu beheben.
BauerMusic

Ich habe unzählige Lösungen ausprobiert und nur diese hat funktioniert. Vielen Dank!
Fan Jin

12

Ich habe auch das gleiche Problem, wenn ich in iOS 9.0 Simulator ausgeführt werde.

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

Simulatoren für iOS 9.3 und frühere Versionen können Swift-Apps möglicherweise nicht mit der Meldung "dyld: Bibliothek nicht geladen: /usr/lib/libauto.dylib" starten. (49326587) Problemumgehung: Führen Sie den folgenden Befehl in Terminal für die entsprechende Version von iOS aus:

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

Für diesen Apfel oben angegebene Lösung in diesem Link.

Einfach

-> Terminal öffnen

-> Geben Sie diese Zeile mit Ihrer gewünschten Version ein (in meinem Fall habe ich in iOS 9.3 zu iOS 9.0 gewechselt)

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

-> Passwort eingeben

-> Jetzt Xcode bereinigen und erneut ausführen

Diese obige Lösung hat bei mir funktioniert.


6

Dies scheint ein iOS-Simulator-Fehler zu sein. Ich sehe dies auf Simulatoren mit iOS 12.0, aber nicht auf solchen mit 12.4.


Das hat meine geistige Gesundheit gerettet !! Ja, es scheint nur ein Simulator 12.0-Fehler zu sein.
user1366265

5

Bekomme diesen Fehler immer noch mit Xcode 10.3. (Übersprungen über 10.2.)


1
Es ist nicht Swift 10.3
iOS

4

Ich bin auf dieses Problem gestoßen, als ich Unit-Tests für iOS11und iOS12.1weiter durchgeführt habeXcode11.1

Die Lösung bestand darin, die Unit-Tests nur mit einem iOS13-Simulator durchzuführen.


2

Eine ziemlich nervige Problemumgehung: Verwenden Sie Xcode 10.1 für die Bereitstellung auf 9.x-Simulatoren. Nur so konnte ich das umgehen.


2
funktioniert nicht, wenn
jemandes

2
Ja, großartiger Punkt. sudo mkdir '/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.3.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift'
Beziehen Sie sich

"Keine solche Datei oder kein solches Verzeichnis"
Pedro Paulo Amorim

2

Keines der oben genannten hat bei mir funktioniert. Mein Problem ist das gleiche wie das, aber ich habe eine App für erstellt macOS.

Laufendes Xcode 11Projektziel 10.4während meines O ist Mojave 10.4.6.

Ich musste Xcode 10.3das stattdessen installieren und verwenden. Keine Probleme seitdem.

Ich vermute, es ist ein Problem mit dem Betriebssystem Xcode versionund dem Projektziel.


1
Ja, es ist erwähnenswert, dass Xcode 11 + Catalina iOS9.x-Simulatoren nicht mehr unterstützt.
Cumanzor

0

Da ich Xcode 10.2.1 verwenden musste, hatte ich dieses Problem mit einer anderen Bibliothek und musste schließlich festlegen, dass schnelle Bibliotheken in Build-Einstellungen immer auf YES eingebettet werden, da sich die betreffende Bibliothek in einer Framework-Datei befand, die ich hatte.


-1

Das Update auf Xcode 10.3 hat es für mich behoben.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.