隨着鐺和graphviz我可以生成一些C/C++代碼as explained in this answer調用圖。如何使用clang或其他工具生成數據流圖?
現在我需要一個在一個非常大的代碼庫(大部分是C)上計算的數據流圖,這個代碼庫是一個軟件,其中cmake
被用作構建工具。
所以我的問題是,給定一個數據結構的名稱,我怎麼可能檢索函數的名稱和使用/實現此結構的文件?
有一些稀疏的參考一些數據流挖掘算法裏面Libtool
從鐺項目(甚至不知道它的東西,保持穩定或發展),但我沒有發現任何關於clang
本身或scan-build
。
我該如何生成這條信息?我真的需要這樣做,鑑於我想檢索代碼中使用的名稱,幾乎所有我已經查看過的靜態分析工具都關注函數和方法,我需要檢查clang
中的數據結構使用情況。
編輯:
,我也在考慮使用的doxygen的文檔,所以如果的doxygen的XML輸出可能是一些有用的工具,我可以用它。
這可能有點古怪,但您是否考慮過將整個代碼庫加載到Eclipse中,然後使用Eclipse的搜索功能來完成它? – slugonamission
@slugonamission很好,因爲我找不到任何有用的東西......;命名我應該在Eclipse中使用什麼工具,我知道CDT是用於C和C++的Eclipse套件,但我不知道用於這種分析的是什麼。 – algl
它不是真正用於數據流,但您的要求似乎是檢查數據結構的使用位置。通過使用CDT + Eclipse,您至少可以以圖形方式查找數據結構的使用位置(在某個搜索菜單中的某個位置),但不是完整的DFG。 – slugonamission