Wie erstelle ich ein iOS-Framework mit schwach verknüpften CocoaPods-Bibliotheken?
Ich versuche, ein iOS-Framework (Test.framework) mit der neuen Vorlage von Xcode 6 zum Erstellen von Cocoa Touch Frameworks zu erstellen. Das Framework hat verschiedene Abhängigkeiten (wie AFNetworking oder FacebookSDK), die in einem Podfile angegeben sind. Ich möchte nicht, dass Abhängigkeiten in das Framework aufgenommen werden. Ich möchte nur eine Verknüpfung zu ihnen herstellen.
Das Problem ist, dass wenn ich das Framework erstelle, die libPods.a verlinkt und eingebunden ist.F: Wie kann ich eine Verknüpfung zur Bibliothek libPods.a herstellen, diese jedoch nicht in das Framework aufnehmen?
Mehr Details
Ich habe über schwache Verlinkung gelesen:https: //developer.apple.com/library/ios/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/WeakLinking.htm Aber ich habe nicht viel Erfahrung mit Projekteinstellungen, also bin ich kein Profi.
Ich habe versucht, libPods.a als "Optional" zu definieren, aber nichts hat sich geändert. Abhängigkeiten waren immer noch enthalten.
Ich habe versucht, die Datei libPods.a aus dem Abschnitt "Binary mit Bibliotheken verknüpfen" in den Erstellungsphasen zu entfernen. Es wird jedoch die folgende Fehlermeldung angezeigt (nachdem der Projektordner gesäubert und erneut erstellt wurde):
ld: library not found for -lPods-MyFramework-AFNetworking
Ich habe versucht, alle Flags von "Other Linker Flags" zu entfernen, aber es gibt mir undefinierte Symbole:
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_FBSession", referenced from:
objc-class-ref in TestClass.o
ld: symbol(s) not found for architecture armv7
Hier ist der Quellcode für ein sauberes Projekt mit enthaltenen Bibliotheken:https: //www.dropbox.com/sh/0ymuzw6kiagz02j/AABzyHiZVaQQvBEnjBgRBq3ua? dl = 0