Konfigurieren von Cocoapods mit einer vorhandenen statischen Bibliothek und einer iOS-Anwendung

Ich habe Probleme damit, meinen Arbeitsbereich mit Cocoapods korrekt zu kompilieren. Es gibt 3 Projekte im Arbeitsbereich, von denen jedes sein eigenes Ziel hat:

libPods - Cocoapods statische Bibliothek mit allen externen AbhängigkeitenlibCommon - Meine statische Bibliothek, in der ich meinen gesamten gemeinsam genutzten Code aufbewahre (Basis-Controller, Netzwerkcode, allgemeine Benutzeroberfläche usw.)myApp - Meine iOS-Anwendung

Sowohl libCommon als auch myApp benötigen die externen Abhängigkeiten von den libPods. Ursprünglich dachte ich, dass es so funktionieren würde:

libPods erstelltlibCommon-Links gegen libPods und BuildsmyApp verbindet sich mit libCommon und baut

In diesem Szenario "besitzt" libCommon die Pods, und dann verlinkt myApp einfach gegen libCommon, wie ich es immer vor Cocoapods getan habe ... aber anscheinend mögen statische Bibliotheken es nicht, mit statischen Bibliotheken verknüpft zu werden (ich habe ein paar dynamische Bibliotheksfehler). Ich habe irgendwo in einem Github-Problem gelesen, dass ich stattdessen libPods und libCommon erstellen und dann myApp mit beiden Bibliotheken verknüpfen sollte. Im Moment sieht mein Podfile ungefähr so ​​aus:

workspace 'MyApp.xcworkspace'
platform :ios, '5.0'

link_with ['Common', 'MyApp']

target 'MyApp' do
  xcodeproj 'MyApp.xcodeproj'

  pod 'AFNetworking',               '1.1.0'
  pod 'TTTAttributedLabel',         '1.6.0'
  pod 'JSONKit',                    '1.5pre'
  pod 'Reachability',               '3.1.0'
end

Bei diesem Setup besitzt myApp alle Pods und dann gebe ich in den libCommon-Build-Einstellungen den Pfad zu den Pod-Headern an. Dies funktioniert so lange, bis ich versuche, eine der Klassen in libCommon zu verwenden. Sobald ich das mache, bekomme ich eine davon_OBJC_CLASS_$_Blah Fehler (was mir sagt, dass die Header zwar verfügbar sind, aber immer noch nicht richtig verknüpft sind). Wenn ich versuche, libCommon in "Build Phases" manuell zu verknüpfen, erhalte ich eine Reihe doppelter Symbolfehler (was lässt mich glauben, dass es bereits verknüpft ist?). Was zum Teufel?

Wie mache ich das richtig und wie soll mein Podfile aussehen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage