Ich versuche, meinen Code mit dem iPhone-Simulator zu profilieren. Ich habe Testüberdeckungsdatei generieren und Instrumentenprogrammablauf aktiviert und den Linker-Flags -lgcov hinzugefügt. Nach allem, was ich gelesen habe, sollte das alles sein, was ich in Bezug auf die Einrichtung tun muss.
Aktualisierung: Testüberdeckungsdatei generieren löst das Flag -test-coverage aus und Instrumentenprogrammfluss löst die -fprofile-arcs aus Flagge. Ich habe die Build-Protokolle überprüft und sie werden beim Kompilieren eingestellt.
Beim Ausführen des Programms kann ich die .gcno Dateien sehen, die zusammen mit dem .o kompilierten Code im Build / .build / Debug erscheinen -iphonsimulator / .build / Objekte-normal / i386-Verzeichnis.
Aber wenn ich die App im Simulator starte, bekomme ich keine * .gcda Dateien.
Ich verstehe, dass diese Dateien die Daten aus der Instrumentierung enthalten. Aber ich kann sie nirgendwo auf dem Computer finden.
Ich weiß, dass sie produziert werden können und neben den Dateien *. gcno erscheinen, weil ich ein altes Verzeichnis für zerstörte Gebäude habe, das sie hat. Ich kann einfach nicht herausfinden, was ich tun muss, damit sie erscheinen und den Lauf aufzeichnen.
Jede Hilfe wird geschätzt.
Ich hoffe, dass dieser Link Ihnen eine Idee gibt. Erkunden Sie den Link, den ich gefunden habe
Die .gcno-Datei wird generiert, wenn der Quelldatei wird mit dem GCC kompiliert -fTest-Coverage-Option. Es enthält Informationen, um das Grundlegende zu rekonstruieren Grafiken sperren und Quellzeile zuweisen Zahlen in Blöcke.
Die .gcda-Datei wird generiert, wenn a Programm mit enthaltenen Objektdateien mit der Option GCC -fprofile-arcs ist hingerichtet. Eine separate .gcda-Datei ist erstellt für jede kompilierte Objektdatei mit dieser Option. Es enthält einen Bogen Übergang zählt und einige Zusammenfassung Informationen.
Vielleicht werden Sie also mit falschen Einstellungen arbeiten. Die Informationen werden auf Ссылка
erwähntDieser Link kann die Antwort haben, im Grunde werden keine gcda-Dateien generiert bis deine App ordnungsgemäß beendet wird. Es gibt zwei mögliche Lösungen:
füge dies zu deinem plist hinzu (aber nicht für Release Builds):
%Vor%