Wie kann ich ändern, OTHER_LDFLAGS über CocoaPods post-install hook?

Mein Projekt verwendet CocoaPods und auch eigene xcconfig - Dateien. Bis jetzt hat dies nicht verursacht keine Probleme: ich hatte bisher nur zu #include die CocoaPods-generierte Konfiguration am Ende meiner benutzerdefinierten Konfiguration.

Allerdings habe ich ein problem, wo die Notwendigkeit bedingt angeben OTHER_LDFLAGS auf der Grundlage der xcconfig, aber ich kann nicht herausfinden, wie dies zu tun.

Als start, habe ich versucht, einfach die Protokollierung der OTHER_LDFLAGS so, aber die flags sind eigentlich nicht angemeldet:

post_install do |installer_representation|
  installer_representation.project.targets.each do |target|
    target.build_configurations.each do |config|      

      name = target.name
      puts "Target Found: #{name}"

      flags = config.build_settings['OTHER_LDFLAGS']
      puts "OTHER_LDFLAGS Found: #{flags}"
    end
  end
end

Die Ausgabe sieht wie folgt aus:

Target Found: Pods-ProjectName-DependencyName1
OTHER_LDFLAGS Found: # nothing here...?
Target Found: Pods-ProjectName-DependencyName2    
OTHER_LDFLAGS Found: # again nothing...
# etc...
Target Found: Pods-ProjectName  # Cool, this is the main target pod
OTHER_LDFLAGS Found: # ...

Wie kann ich eigentlich ändern OTHER_LDFLAGS über die CocoaPods post-install hook?

  • Was wollen Sie genau tun ? Wenn Sie möchten, ändern Sie die OTHER_LDFLAGS, können Sie es in den pod spec direkt
  • Nach allem, was ich nicht glaube, diese Frage macht Sinn. Wie @Loegic sagt: die Schoten können sich selbst hinausgewachsen erklären die OTHER_LDFLAGS in Ihrer podspecs. Sie nicht zu verwirren wollen um mit den Hülsen Ziel IMO.
  • Ich bin in der unglücklichen situation, wo ich eine Drittanbieter-statischen Rahmen, die nicht über eine CocoaPod und ist zu groß, um gut zu funktionieren, wie ein pod (8 GB... :/). Ich habe geschrieben scripts zu schaffen, aber es erfordert auch Ergänzungen zu den OTHER_LDFLAGS. Sie können nicht außer Kraft gesetzt OTHER_LDFLAGS in der Ziel-build-Einstellungen oder sonst CocoaPods xcconfigs werden ignoriert. Können Sie nicht in benutzerdefinierten xcconfig, oder die eine oder andere config-flags (je nachdem, wie Sie zählen pod xcconfig) überschrieben wird. So, ich dachte, zu verwenden, installieren Sie den Haken.
  • Sie gehen davon aus, dass, wenn ein Projekt verwendet CocoaPods, es ist der einzige Weg, Abhängigkeiten enthalten sein wird... leider, dies ist nicht der Fall hier. Im Grunde bin ich ziehen in Abhängigkeiten sowohl mithilfe von CocoaPods und custom-shell-Skripte... ist das eine tolle Idee? NÖ. Leider bin ich verpflichtet, ein third-party-Rahmen, der nicht über eine CocoaPod und ist zu groß (8 GB). Wieder, keine gute Idee. Ich will auch gar nicht versuchen, diese Arbeit mit CocoaPods... manuell ändern OTHER_LDFLAGS in der Ziel-build-Einstellungen ist es einfacher, wenn ich als letzten Ausweg.
  • In unserem Projekt haben wir eine vustom xconfig für unsere app Ziel. Es ist möglich,.
  • Hast du $(geerbt)?
  • Wenn Ihr Rahmen ist außerhalb von cocoapods ich sehe nicht, warum Sie ändern die Hülsen Ziel.

Schreibe einen Kommentar