webentwicklung-frage-antwort-db.com.de

dyld: Bibliothek ist nicht mit den Cocoapoden 0.37 und Xcode 6.3 geladen

Ich habe alle Fragen zum Fehler gelesen:

dyld: Library not loaded: @rpath/Bolts.framework/Bolts Referenced from: /private/var/mobile/Containers/Bundle/Application/1542F906-CCE1-4181-AC7C-B5E3EE50E7D7/eBikeMotion.app/eBikeMotion Reason: no suitable image found. Did find:

Was bedeutet, dass meine Anwendung nicht auf einem realen Gerät ausgeführt werden kann (läuft jedoch problemlos im Simulator ...). Bis zu einem bestimmten Zeitpunkt dachte ich, dass es sich um ein Problem mit den von mir installierten Frameworks handelte Warf den Fehler, Alamofire, und das nächste Framework, das den Fehler warf, war das nächste in alphabetischer Reihenfolge (Bolts, wie Sie im Code-Snippet sehen können) Ich habe die letzte Version (0.37) mit einer sauberen Installation erhalten, Iv'e hat versucht, ein neues Projekt zu erstellen, ich habe alle Lösungsvorschläge zu diesem Problem ohne Glück ausprobiert, also muss ich ein Problem öffnen mit der Hoffnung, dass mir jemand helfen kann.

Grüße.

18
Jorge Revuelta

Nach der Neuinstallation des gesamten Systems und der Suche nach einer Lösung habe ich festgestellt, dass einige der für CocoaPods obligatorischen Build-Phasen fehlten.

Die Lösung für dieses Problem gilt für die nächsten Schritte:

  1. Integrieren Sie das Cocoapods-Projekt (Sie können das Tool mit Sudo gem install cocoapods-deintegrate installieren). 

cocoapods-deintegrate auf Github

  1. Ändern Sie Ihre Pod-Datei:

    Sie sollten Ihre Zielverknüpfung mit link_with 'ProjectName' definieren.

    Sie sollten das Ziel für Ihre Pods definieren: target 'ProjectName' do [hier Pods] end.

  2. Machen Sie eine Installation mit pod install

  3. Wechseln Sie anschließend zu XCode und überprüfen Sie die folgenden Einstellungen:

    Überprüfen Sie in den Projekteinstellungen unter "Konfigurationen", ob in Debug und Release ein Konfigurationssatz mit dem Namen Pods-ProjectName.[debug|release] vorhanden ist.

    In Ihrem Ziel sollten Sie unter "Phasen erstellen" drei neue Phasen haben, die benannt werden sollten: Check Pods Manifest, Embed Pods Frameworks und Copy Pods Resources.

  4. Machen Sie eine saubere, dann bauen Sie und führen Sie Ihr Gerät.

Das ist es.

39
Jorge Revuelta

In meinem Fall folgte ich der obigen Antwort von @Jorge, löste das Problem jedoch nicht. Der genaue Fehler war etwas anders, da die fehlende Datei @rpath Pods.framework/Pods war. Ich habe es schließlich mit Hilfe von CocoaPods Ausgabe Nr. 3586 gelöst: 

Gehen Sie zu Ziel> Allgemein> Verknüpfte Frameworks und Bibliotheken Setzen Sie sowohl Pods.framework als auch Pods_target.framework auf Optional

Ich versuche immer noch genau herauszufinden, warum ... diese Antwort einige Informationen enthält: was-es-es-mein-zu-schwach-Link-ein-Framework

24
Suz

Ich musste zwei Probleme beheben:

  1. Gehen Sie zu jedem Ziel, dann Build Phases, dann Link Binary With Libraries und wählen Sie Pods.framework aus. Setzen Sie es auf Optional.

  2. Cocoapods erstellte nicht die benötigten Run-Skripts für mein zweites Ziel. Mein erstes Ziel hatte alle Skripte. Der zweite nicht. Also habe ich alle fehlenden Run-Skripte vom ersten zum zweiten Ziel kopiert. Tippen Sie oben links auf das kleine "+", fügen Sie ein Ausführungsskript hinzu und fügen Sie das Skript aus dem anderen Ziel ein. Ich habe das für Check Pods Manifest.lock, Copy Pods Resources und Embed Pods Frameworks gemacht.

Dann lief es auf dem Gerät. Endlich.

11
Raphael

Hatte dasselbe Problem beim Hinzufügen von Pods zur WatchKit-Erweiterung. Das Verknüpfen des Hauptziels mit der Watch-App ist überhaupt nicht die beste Option. Es wurde herausgefunden, dass cocoapod 0.37.2 das Script "Embed Pods Frameworks" nicht in die Buildphase eingefügt hat. 

Skript: "${SRCROOT}/Pods/Target Support Files/Pods-ExtensionName/Pods-ExtensionName-frameworks.sh"

2
badeleux

Um dies zu beheben, müssen Sie den Status in Link Binary with Libraries in der Erstellungsphase für pod_projectName.framework und Bolt.framework ändern

Ich habe den gleichen Fehler in meinem Projekt bekommen.

Fehler in CommonCrypto.framework abrufen

Fehler behoben, indem Required in Optional geändert wurde

0
Bhavesh Patel

Am einfachsten ist es, sicherzustellen, dass Ihr Protobuf.framework vom Build-Schritt abhängig ist.

Dadurch wird Xcode angewiesen, das von Ihrer Pod-Installation/Aktualisierung erstellte Protobuf.framework zu kompilieren, wenn es Ihr Ziel erstellt.

0
Dino Alves

Um Cocoapods generieren zu können, erstellen Sie die Buildphasen Check Pods Manifest, Embed Pods Frameworks und Copy Pods Resources: 

1 - Gehen Sie zu den Erstellungsphasen und entfernen Sie alle benutzerdefinierten Änderungen. Ich musste alles in der Phase Link Binary With Libraries entfernen.

2 - Machen Sie eine Podintegration (oder entfernen Sie einfach die Dateien selbst)

3 - Führen Sie eine neue Pod-Installation aus

Das hat bei mir funktioniert. Ohne den ersten Schritt hat es nie getan.

0
Siamaster