Wie würden Sie die Quelle eines importierten Frameworks zurückverfolgen?

9

Mit Xcode 4 und dem iOS 6 SDK, um die Klassen in QuartzCore.framework zu nutzen, mussten Sie eine Verbindung mit QuartzCore.framework und #import <QuartzCore/QuartzCore.h> herstellen. Das war in Ordnung und es ergab Sinn. Ich war glücklich mit meiner Sicht der Welt:)

In Xcode 5 mit dem iOS 7 SDK werden die QuartzCore-Header automatisch importiert. Die Verwendung von CA-Klassen löst keine Warnungen oder Linker-Fehler aus.

Meine Frage ist dies:

Da diese Header offensichtlich von irgendwo importiert werden und die Bibliothek verknüpft wird, wie kann ich die Quelle des Imports und des verknüpften Frameworks verfolgen? Dies ist mehr für meine Neugierde und um mehr über diesen Prozess zu verstehen, als um ein spezifisches Problem zu lösen.

Zusätzliche Informationen:

  • Module sind eingeschaltet (standardmäßig in Xcode 5), aber @import wird in keinem Code verwendet. Wenn Sie jedoch Enable Modules (C and Objective-C) und Link Frameworks Automatically auf "No" setzen, scheint es nicht notwendig zu sein, dass der #import von QuartzCore kompiliert wird.
  • Sobald die Module ausgeschaltet sind, wird Produkt | Aktion ausführen | Vorverarbeitung zeigt den QuartzCore-Header in der vorverarbeiteten Ausgabe an. Dies erklärt, warum der Code kompiliert wird, aber nicht wo er herkommt.
  • otool zeigt nichts vom QuartzCore-Framework in seiner Ausgabe:

    %Vor%

Bearbeitet mit einer Teillösung

  • Ich habe zumindest die Quelle des #import herausgefunden. UISlider prüft nun anhand der UIKit-Header von iOS 7 einen Import von <QuartzCore/QuartzCore.h> , der in iOS 6 nicht vorhanden war. Das Rätsel wurde gelöst, aber das Fehlen von Linker-Fehlern ist immer noch merkwürdig.
Dave Verwer 15.10.2013, 10:12
quelle

1 Antwort

2

Sieht so aus, als ob es von UIKit verlinkt wird, möglicherweise mit LC_REEXPORT_DYLIB.

Weitere Informationen zu diesem Twitter-Thread: Ссылка

Das Ausführen von Otool auf UIKit.framework zeigt, dass es verknüpft ist.

%Vor%     
Dave Verwer 15.10.2013, 10:52
quelle

Tags und Links