Freitag, Juni 5, 2020

dyld: Library nicht geladen: @rpath/libswiftSwiftOnoneSupport.dylib

Habe ich gebaut, ein Swift-Rahmen und jetzt versuche ich, zu beginnen mit dem Aufbau einer Swift-iOS-Anwendung, die framework. Ich bin immer diese Fehlermeldung:

dyld: Library not loaded: @rpath/libswiftSwiftOnoneSupport.dylib
  Referenced from: /Users/tdean/Library/Developer/Xcode/DerivedData/NFLApplication-ejmafvjrlqgjaabggwvadjarjjlg/Build/Products/Debug-iphonesimulator/NFLStatsModel.framework/NFLStatsModel
  Reason: image not found

Habe ich durchforstet, SO dass die gefundenen Berichte und versucht die Updates dort aufgelistet, darunter:

  • Entrümpelung meiner DerivedData Ordner
  • Neustart von Xcode und dem iPhone-simulator
  • Sicherzustellen, dass Always Embed Swift Standard Libraries = YES eingestellt ist, sowohl in meinen Rahmen und meine Anwendung build-Einstellungen
  • Sicherzustellen, dass Enable Bitcode=NO eingestellt ist, sowohl in meinen Rahmen und meine Anwendung build-Einstellungen
  • Sicherzustellen, dass Runpath Search Paths eingestellt ist @executable_path/Frameworks sowohl in meinen Rahmen und meine Anwendung build-Einstellungen
  • Kopiert alle libswift Dateien von meinem Xcode-installation in eine lokale Kopie in meinem Projekt, und Hinzugefügt eine benutzerdefinierte build-phase kopieren Sie diese Dateien in den frameworks-Ordner.

In jedem Fall, bekomme ich die gleiche Fehlermeldung, wenn ich versuche zu laufen, meine Bewerbung.

  • Xcode Version 8.1 (8B62)
  • Apple Swift version 3.0.1 (swiftlang-800.0.58.6 clang-800.0.42.1)
  • longshot Tipp: fügen Sie @executable_path/../Frameworks Ihrer Laufzeit von Suchpfaden auf Ihre Rahmen.
  • Kein Unterschied, wenn ich hinzufügen, dass. Danke für die Anregung.
  • Oh, was ist mit Swift-Sprache-version? ist es alle 3.0?
  • Aktualisierte Ausgabe enthalten Swift-version
InformationsquelleAutor Tim Dean | 2016-12-06

7 Kommentare

  1. 42

    Schließlich bekam ich diese arbeiten mit einer Mischung von Korrekturen. Ich bin mir nicht sicher, ob alle von Ihnen sind notwendig, aber ich bin zu dokumentieren, was schien für mich arbeiten hier, nur falls jemand anderes profitieren können von dem, was ich gefunden habe.

    1. Ich habe Always Embed Swift Standard Libraries auf einen Wert von YES in der build Registerkarte „Einstellungen“ für meine beiden Swift-framework und in der raschen Anwendung, die das framework verwendet.
    2. Ich habe Foundation.framework auf die Verlinkten Frameworks und Bibliotheken Abschnitt der Registerkarte „allgemein“, meine beiden Swift-framework und in der raschen Anwendung, die das framework verwendet.
    3. Ich habe Foundation.framework auf die Eingebettete Binärdateien Abschnitt der Registerkarte „allgemein“ für die schnelle Anwendung, die das framework verwendet.

    Mit allen 3 Einstellungen im Ort, bin ich in der Lage zu erstellen und auszuführen, um meine Anwendung ohne die Begegnung mit dieser Fehlermeldung.

    • DANKE!!! Ich verbrachte zwei Stunden einrichten einer demo-app/framework feature einer Produktions-app, die ich arbeite. Zweimal, beim Bau der Dinge, die ich auf diese genauen Fehler. Aus irgendeinem Grund konnte ich Schleife (Iteration) durch ein array mit benutzerdefinierten UIButtons im Rahmen, aber in dem moment versuchte ich tatsächlich etwas zugreifen, die in der Schleife bekam ich diese Fehlermeldung. Zur info: getestet habe ich jedes Ding und der nur ein, die ich brauchte, um hinzuzufügen war #1. Dieses neue feature wurde entwickelt, ausschließlich in Xcode 8 und funktioniert (warum weiß ich nicht) in einer Abzweigung der Dinge, nicht aber in einem anderen neu erstellten Projekt – bis jetzt.
    • Es war genug für mich zu erfüllen, den 1. Punkt deiner Anleitung. Danke.
    • Punkt 1 allein gelöst für mich. Ich finde es seltsam, dass Sie haben um es auf die app UND auf den verknüpften Rahmen. XCode Abhängigkeiten-management ist eine Quelle der Ratlosigkeit. Jeder andere Weg, um es automatisch?
    • Ich hatte dieses problem auf eine unit-test-target. Hinzufügen Von Foundation.Rahmen auf die Link-Binary mit Bibliotheken der test-target war genug für mich.
    • Punkt 1 gelöst für mich.Der Hinweis, dies geschah mit einem eingebetteten benutzerdefinierten Rahmen
    • Wenn Sie mit CocoaPods, setzen Sie dieses Kennzeichen für Pods-Projekt sowie 🤦🏻♂️
    • Ich hatte auch dieses Problem mit Xcode 11 und versuchen, die tests gegen ein simulator auf iOS-11. Es scheint eine Menge von Dingen kann dieses Problem verursachen 😞

  2. 25

    Ist dies möglicherweise nicht der Fall für alle sein, aber ich löste es, indem das eigentliche schreiben von code in der main-target.

    Hatte ich ein leeres Projekt, bestehend aus einen Rahmen und ein test-target, und bei der Ausführung von tests wurde ich immer diese Fehlermeldung. Anscheinend Swift ist ziemlich schlau zu erkennen, dass Sie eigentlich gar nicht benötigen diesen-Bibliothek und enthält keine Links zu libswiftSwiftOnoneSupport.dylib.

    Die Lösung ist einfach, fügen Sie einige code, den ich gerade Hinzugefügt:

    class Test {
        func a() { print ("something") }
    }

    sowie libswiftSwiftOnoneSupport.dylib bekam verbunden.

    • „Anscheinend Swift ist ziemlich schlau zu erkennen, dass Sie eigentlich gar nicht benötigen diesen-Bibliothek und enthält keine Links zu libswiftSwiftOnoneSupport.dylib“ Zu klug für seine eigenen gut, da Sie zweifellos tun.
    • Verloren nur 3 Stunden auf, die. Achtung: ich hatte gerade struct-Deklaration im Ziel und ich war immer noch dieser Fehler. Hinzufügen von Test-Klasse mit Funktion aus Fehler verschwinden (!!!). Verrückt.
    • Hast du eine andere Lösung für dass? Dasselbe ist mir passiert, und seinen seltsamen
    • Nein, da ich eigentlich brauchte meine Rahmen haben einige code, der in. Sie könnte in der Theorie zwingen link, aber sind Sie sicher, dass Sie das brauchen? So lange, wie Sie Ihre Rahmen haben einige code, der in, Sie sollten gut zu gehen.
    • Dies war für mich auch, in einem unit-test-target auf iOS-11 & Xcode 10.2. Erwähnenswert ist, dass es keine Ausgabe auf iOS-12. Bizarr.
  3. 14

    Mehrere Tage nach dem stecken, mit dieser Frage habe ich endlich etwas gefunden, das für mich gearbeitet; hoffentlich hilft das anderen auch.

    Stellt sich heraus, dass speziell mit print() überall im code irgendwie Kraft libswiftSwiftOnoneSupport.dylib geladen werden und das Problem wird Weggehen.

    Ich bin mit Xcode 10.1, Swift 4.2 und der pod war, dass er mir dieses Problem war Flink.

    BTW, ich bin mir bewusst, @S2dent’s Vorschlag „nur fügen Sie einige code“ aber in meinem Fall mein Rahmen hatte schon mehrere verschiedene Klassen, so hat es mir nicht helfen.

    • Der für mich arbeitet… das war das einzige, was funktionierte, aber wie? Warum? Kann mir jemand das erklären?
    • Ich kann es nicht glauben. Dies ist auch die richtige Antwort für mich. Ich habe gerade eine zufällige print() zu einer zufälligen Swift-Datei in meinen tests! Diese riecht wie ein Xcode Fehler.
  4. 9

    Wie installieren Sie Ihre Abhängigkeiten?

    Ich hatte ein ähnliches Problem:

    dyld: Library not loaded: @rpath/libswiftSwiftOnoneSupport.dylib
    Referenced from: <internal framework>
    Reason: image not found

    Es stellte sich heraus, dass in Bezug auf Swift-ganze-Modul-Optimierung.

    Mit Karthago als dependency manager, Sie wurden zusammengestellt für die Freigabe, und somit kompiliert mit ganzen-Modul-Optimierung, die Xcode schlug vor, dass ich schalten. Läuft die app auf dem simulator kompiliert es für Debug. Ich vermute, dass dynamische frameworks nicht auf einer unterschiedlichen Stufe der Optimierung aus der app läuft es.

    War die Lösung explizit angeben, die Konfiguration, die ich wollte Karthago zu bauen. (carthage bootstrap --configuration Debug) Oh, und die Reinigung meines build-Ordner, natürlich.

    • Danke für den Vorschlag, aber ich war nicht zu installieren, alle Abhängigkeiten noch mit Karthago. Ich habe einen Swift Rahmen meiner eigenen Schöpfung in einem Xcode-Projekt. Ich habe eine Swift-Anwendung meiner eigenen Schöpfung in einem anderen Xcode-Projekt. Ich habe beide Projekte in einem einzelnen Xcode-Arbeitsbereich, und ich habe das framework verwiesen wird, die von der Anwendung.
    • Versuchen Sie, die Ebene der Optimierung in den build-Einstellungen sowohl Ihre Rahmenbedingungen und Ihre app.
    • Nur die Reinigung meines build-Ordner für mich gearbeitet. Ich immer verwenden Sie die option – Xcode > Produkte > Clean Build Folder
  5. 2

    Ich hatte das gleiche Problem, das hinzufügen der Bibliothek (meine eigene bauen einer) Linked Frameworks and Libraries im General – tab der app löste das Problem.

  6. 0

    Können Sie auch eine Host-Anwendung, um Ihre test-target, wenn Sie nicht wollen, um add-Stiftung.Rahmen um Verlinkte Frameworks oder Eingebettete Binärdateien

  7. 0

    Können Sie dies lösen, indem Sie die Einstellung „Immer Einbetten Swift-Standard-Bibliotheken“ auf „ja“ in den Build-Einstellungen für Ihre Zielgruppe.

Kostenlose Online-Tests