Ich möchte ein Programm Dependency Graph (PDG) aus C-Quellcode generieren. Ich fand Papiere, die erklären, wie es geht, aber alle verwendeten das kommerzielle CodeSurfer-Tool.
Gibt es irgendwelche kostenlosen Tools, die das tun?
Frama-C ist ein Open-Source-Framework für statische Analysen, das einen Sound Programmabhängigkeitsgraphen berechnen kann für C-Programme. Das Slicing-Plugin verwendet das resultierende PDG. Die Slicing- und PDG-Berechnung wurde in Februar 2010 auf der Mailingliste diskutiert ( Nachrichten von jung, myung-jin und ihre Antworten).
Sie können sich auch NIST's Unravel oder Georgia Tech's Aristotle . Sowohl Valsoft an der Universität Karlsruhe als auch Loyolas Chirurgischer Assistent , könnte auch eine Untersuchung wert sein.
Doxygen kann Funktionsaufrufer und aufgerufene Graphen sowie alle in Ihrem System verwendeten Funktionen generieren Programm. Dies ist möglicherweise nicht genau das, wonach Sie suchen, aber es könnte einige nützliche Daten liefern.
SourceMonitor ist ein Metriken-Tool, das Funktions- und Programmkomplexität sowie Komplexitätsdiagramme zeigen kann.
Beide Werkzeuge sind kostenlos.
Es gibt ein vielversprechendes neues Tool namens cpp-depenencies
.
Er kann component
Abhängigkeitsdiagramme (wie unten) sowie class
Hierarchiediagramme generieren (indem Sie eine Option übergeben, um jede Quelldatei als Komponente zu behandeln).
Tags und Links c c++ graph static-analysis