makefile でエンコードされた依存関係をダイアグラムで可視化

makefile でエンコードされた依存関係をダイアグラムで可視化

密接に関連makefileに提供されている依存関係をツリーとして表示するには?しかし、そこに提供された答えは満足できません(つまり、うまくいきません)。

標準のMakefileにエンコードされたDAG(方向性非循環グラフ)を可視化するためのツールはありますか?たとえば、Unixパイプラインを介した後処理のためのシェルスクリプトも許容可能なソリューションです(おそらくMakeFilesをgraphvizまたはLaTeXに変換するpandocフィルタを使用)。

このグラフィックビジュアライゼーションを直接組み立てるツールは必ずしも必要ではありませんか?メイクファイルの共通ファイル形式をグラフィックビジュアライゼーションファイルや同様のファイルに簡単に変換するだけで十分です。

答え1

私は信じるmakefile2graph元の投稿の作者が望む内容がまさにそれです。

完全なインストールと使用例:

  • インストール(例:Debianシステムにインストールgraphvizされていることを確認)sudo apt install graphviz
cd /my/install/dir
git clone https://github.com/lindenb/makefile2graph
cd makefile2graph
make
  • GDIRPNGの生成(makefile2graph変数にパスを追加する場合は専用変数を使用する必要はありませんPATH
cd /path/to/my/makefile
GDIR=/my/install/dir/makefile2graph
make -Bnd |  ${GDIR}/make2graph | dot -Tpng -o my_graph.png

関連情報