最近研究了下linux 下的doxygen的使用,很有意思,把经验分享下:
1.安装doxygen
安装包doxygen-1.7.4.linux.bin.tar.gz(可在官网下载)
命令:
1)tar xvfz doxygen-1.7.4.linux.bin.tar.gz
2)cd doxygen-1.7.4
3)./configure
4)make
5)make install
安装后需留意下doxyg的路径,例如:/usr/bin/doxygen
2.配置Doxygen工作环境
步骤:
6)进入项目目录(test为例说明)cd test/
7)生成配置文件Doxygen –g
l默认生成的配置文件名为"Doxyfile",也可以采用"doxygen -g your-cfg-filename"命令格式指定所生成的配置文件名。如无特殊需要,采用默认的配置文件名即可。
lDoxyfile文件内容非常多,大概1000多行,不过其中约4/5都是注释,每个配置选项都有一段详细的注释。日后,如果对Doxygen各配置选项的意义有一定了解,可以在生成配置文件的命令中添加"-s"选项,生成不含注释的配置文件,操作如下:$ doxygen -s -g
3)配置文件的相应设置,这里已经有个模板Doxyfile(test文件夹下),可以根据需要更改相应设置
#项目名称,将作为于所生成的程序文档首页标题
PROJECT_NAME= “Test
#文档版本号,可对应于项目版本号,譬如svn、cvs所生成的项目版本号
PROJECT_NUMBER= "1.0.0
#程序文档输出目录
OUTPUT_DIRECTORY= doc/
#程序文档语言环境
OUTPUT_LANGUAGE= Chinese
#如果是制作C程序文档,该选项必须设为YES,否则默认生成C++文档格式
OPTIMIZE_OUTPUT_FOR_C= YES
#对于使用typedef定义的结构体、枚举、联合等数据类型,只按照typedef定义的类型名进行文档化
TYPEDEF_HIDES_STRUCT= YES
#在C++程序文档中,该值可以设置为NO,而在C程序文档中,由于C语言没有所谓的域/名字空间这样的概念,所以此处设置为YES
HIDE_SCOPE_NAMES = YES
#让doxygen静悄悄地为你生成文档,只有出现警告或错误时,才在终端输出提示信息
QUIET = YES
#只对头文件中的文档化信息生成程序文档
FILE_PATTERNS = *.h
#递归遍历当前目录的子目录,寻找被文档化的程序源文件
RECURSIVE= YES
#示例程序目录
EXAMPLE_PATH = example/
#示例程序的头文档(.h文件)与实现文档(.c文件)都作为程序文档化对象
EXAMPLE_PATTERNS = *.c \
*.h
#递归遍历示例程序目录的子目录,寻找被文档化的程序源文件
EXAMPLE_RECURSIVE = YES
#允许程序文档中显示本文档化的函数相互调用关系REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
REFERENCES_LINK_SOURCE = YES
#不生成latex格式的程序文档
GENERATE_LATEX = NO
#在程序文档中允许以图例形式显示函数调用关系,前提是你已经安装了graphviz软件包
HAVE_DOT = YES
CALL_GRAPH = YES
CALLER_GRAPH = YES
#让doxygen从配置文件所在的文件夹开始,递归地搜索所有的子目录及源文件
RECURSIVE = YES
#在最后生成的文档中,把所有的源代码包含在其中
SOURCE BROWSER = YES
$这会在HTML文档中,添加一个侧边栏,并以树状结构显示包、类、接口等的关系
GENERATE TREEVIEW=ALL
3.程序源码文档化
准备好Doxygen的工作环境后,就需要根据Doxygen所定义的注释规则,对程序源码进行文档化。换句话说,就是在对程序源码添加注释时,要按照Doxygen的游戏规则来搞。
Doxygen的注释类型可分为:
l行间注释:注释语句不与程序源码出现在同一行,主要用于注释头文件中出现的结构体(struct)、枚举(enum)、联合(uion)等数据类型,以及程序接口的功能与使用约定;
l行内注释:注释语句与程序源码出现在同一行内,主要用于代码的局部注释。
注释的种类有很多,下面是其中的一种:
Doxygen认可的行间注释标记见下例:
/**
*这是行间注释标记示例*/
Doxygen认可的行内注释标记见下例:
typedef struct {double coord[3]; ///这是行内注释示例
}M2_3D_Point;
4.程序文档生成
现在开始生成程序文档,将终端的工作目录定位在test目录,然后键入:
$ doxygen your-cfg-filename
your-cfg-filename是Doxygen配置文件名,如果是使用"doxygen -g"生成的配置文件——Doxyfile,那么可以在终端里仅键入"doxygen"命令即可生成程序文档。
生成的文档位于test/doc/html目录中,使用浏览器打开该目录中的index.html文件,即可看到自己的工作成果。
5.Doygen集成到codeBlocks
5.1配置步骤
在codeBlocks工作界面中,Tools->Configure tools ->Add
Name :doxygen
Executable:/usr/bin/doxygen
Parameters:配置文件名,(如果doxygen –g生成的默认配置文件,在这里不需要写)
Working directory:test(要生成程序文档的项目路径)
5.2使用:
当需要生成程序文档时:Tools->doxygen即可。生成的文档位于test/doc/html目录中,使用浏览器打开该目录中的index.html文件,即可看到自己的工作成果