[情報] C/C++ header dependency 工具

看板C_and_CPP (C/C++)作者 (www.eJob.gov.tw)時間16年前 (2009/06/29 15:28), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/2 (看更多)
主要針對 VC 的,抱歉。 -- 發現有套商業軟體,台幣差不多 1200 吧,叫 IncludeManager 做得還算不錯。 直接進去開圖看就清楚囉: http://xania.org/200712/c-plus-plus-header-dependency-tricks -- 不用額外花錢的: 1. linux 或 gcc http://tinyurl.com/6cs2ed (stackoverflow.com: How to find header dependencies for large scale projects on linux) 2. VC 的: http://stackoverflow.com/questions/42308/tool-to-track-include-dependencies 簡單的提一下,doxygen (免費、多平台原始碼自動文件化工具) 可以輸出很多圖,包括 這篇說的 include header 的圖,但缺點是要在 input 的地方把所有用到的 header 檔 都放進去給 doxygen 分析,很廢工而且慢,最後輸出的結果是透過 graphviz 轉成圖片。 -- graphvix 也是免費多平台軟體,還蠻好用的,可以很快的就畫出圖,舉例來說 只要打 digraph test{ src.cpp->iostream; src.cpp->windows.h; iostream->istream; istream->ostream; } 存檔給 graphviz 的 dot (.exe) 就會自動跑出圖形檔格式 gif, png, jpg, ps, svg... google 搜尋「graphviz」隨便挑前幾篇中文的來看,一小時內就能上手了。 ※裝最新版,跑的時候會有字型問題,改裝 graphviz-2.20.3.1.msi 反而正常 而 msvc 的 cl.exe /showIncludes 可以輸出 include 檔的關係, 再將這些紀錄轉成 dot 格式讓 graphviz 轉換就也能簡單的畫出 include 圖來。 依此寫了個陽春的版本 (console) 原始碼: http://codepad.org/mE7DCPrG (下載 boost 的 xpressive 標頭檔,設好 include 目錄 就能編譯出執行檔,不用跑 bjam 安裝 boost) MFC 精靈建立 MDI 應用程式,跑出 svg 格式的圖: http://www.mediafire.com/download.php?dnjmey2z2zz (firefox可直接執行,ie要裝svg外掛,裝完可搜尋文字) 執行檔: http://www.mediafire.com/download.php?fvzjyuum2ix -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.8.137.123

06/29 16:06, , 1F
.....從沒想過這東西還有人在賣要錢的。
06/29 16:06, 1F
文章代碼(AID): #1AI6q45t (C_and_CPP)
文章代碼(AID): #1AI6q45t (C_and_CPP)