doxygen と graphviz でクラス図を出してみる
はい、おつカレー様です。
夏はカレーとビールですね。
最近bottleのソースコードリーディング的な事をやっていたりするのですが、これをやっている際にdoxygenでのクラス図生成が便利だったので、メモリん。
環境はCentOS6系です。
doxygenとgraphvizのインストール
yum。楽チン。
# yum install doxygen graphviz
bottleのソースも落としておきましょう。
$ mkdir bottle bottle_doxygen $ wget http://bottlepy.org/bottle.py -O ./bottle/bottle.py
設定ファイルのテンプレート生成
次にDoxygenの設定ファイルのテンプレートを出力しましょう。
$ doxygen -g Doxyfile
$ cat Doxyfile | grep -v ^# | grep -v ^$ DOXYFILE_ENCODING = UTF-8 PROJECT_NAME = PROJECT_NUMBER = OUTPUT_DIRECTORY = CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English BRIEF_MEMBER_DESC = YES REPEAT_BRIEF = YES ABBREVIATE_BRIEF = ALWAYS_DETAILED_SEC = NO INLINE_INHERITED_MEMB = NO FULL_PATH_NAMES = YES STRIP_FROM_PATH = STRIP_FROM_INC_PATH = SHORT_NAMES = NO (snip)
設定ファイル変更
今のディレクトリ構成にしたがって変更。
$ diff Doxyfile.org Doxyfile 28c28 < PROJECT_NAME = --- > PROJECT_NAME = bottle 41c41 < OUTPUT_DIRECTORY = --- > OUTPUT_DIRECTORY = ./bottle_doxygen/ 571c571 < INPUT = --- > INPUT = ./bottle/ 991c991 < GENERATE_LATEX = YES --- > GENERATE_LATEX = NO 1360c1360 < HAVE_DOT = NO --- > HAVE_DOT = YES
項目名 | 意味 |
PROJECT_NAME | プロジェクト名(適当に) |
OUTPUT_DIRECTORY | HTML出力先を指定 |
INPUT | ソースディレクトリを指定 |
GENERATE_LATEX | LATEX出力が要らないので。いるならYESのまま。 |
HAVE_DOT | クラス図を出力する |