一、概述
Doxygen是一个代码文档生成工具。它从代码文件中提取注释并可生成多种文档形式。如:网页文档HTML,RTF (MS-Word),PDF等等。同时也可生成函数之间的调用和文件的依赖关系图表。
二、安装
平台:linux
sudo apt-get install doxygen
sudo apt-get install graphviz
sudo apt-get install doxygen-latex
sudo apt-get install latex-cjk-*
doxygen 主要的处理程序
graphviz 生成如类继承关系的图片
doxygen-latex 用于将doxygen输出的latex转换为pdf
latex-cjk-* 转换pdf时,对中文字体的支持
注释:也可以使用htmlhelp将doxygen生成的网页文件转化为chm文件。
但是htmlhelp只能运行在windows下--拷出文件进行转换
三、使用
1、特定格式的批注撰写
简单示例
当前目录下新建main.cpp文件,添加符合要求的注释
/**
*@file main.cpp
*@brief This is the test zhushi
*@author circle
*@date 2023/7/15
*/
#include <iostream>
void test()
{
std::cout << "hello\n";
}
int main()
{
test();
}
2、生成配置文件
2.2 步骤
①生成配置文件的模板文件,名为Doxyfile
doxygen -g
②根据需要手动修改配置文件
修改点EXTRACT_ALL的值改成YES,如下,表示提取所有类和函数
EXTRACT_ALL = YES
2.3 配置说明
需要设置的主要分为:文档格式、项目输入文件、输出文档类型
简单说明:
- PROJECT_NAME: 项目名称。
- PROJECT_VERSION: 项目版本。
- PROJECT_LANGUAGE: 项目使用的语言。
- INPUT: 包含源代码文件的目录。
- FILE_PATTERNS: 匹配哪些文件应该被 Doxygen 处理。
- EXTRACT_ALL: 是否提取所有类和函数。
- GENERATE_LATEX: 是否生成 LaTeX 格式的文档。
- HAVE_DOT: 是否可以使用 Graphviz 的 dot 工具来生成图表。
- CALL_GRAPH: 是否生成函数调用图。
- CALLER_GRAPH: 是否生成被调用函数图。
- WARNINGS: 是否显示警告信息。
- SOURCE_BROWSER: 是否显示源代码浏览器。
- INLINE_SOURCES: 是否在 HTML 文档中内联显示源代码。
- STRIP_CODE_COMMENTS: 是否去除源代码中的注释。
- GENERATE_HTML: 是否生成 HTML 格式的文档。
- HTML_OUTPUT: HTML 文档的输出目录。
- HTML_FILE_EXTENSIONS: HTML 文件扩展名。
- GENERATE_XML: 是否生成 XML 格式的文档。
- XML_OUTPUT: XML 文档的输出目录。
- XML_PROLOGUE: XML Prologue 的内容。
- GENERATE_LATEX: 是否生成 LaTeX 格式的文档。
- LATEX_OUTPUT: LaTeX 文档的输出目录。
- HAVE_BIBTEX: 是否可以生成参考文献。
- BIB_LATEX_STYLE: 参考文献的 LaTeX 样式。
- EXT_CALL_GRAPH: 是否为外部函数生成调用图
3、生成文档
①生成文档
在具有配置文件的目录下运行doxygen即可生成文档
doxygen
在输出目录中,已经有html
和latex
两个目录
②生成pdf
make
执行生成动作:latex目录下有Makefile,在其路径下执行make 即可
生成的pdf文件为refman.pdf
查看pdf内容,不止有Content很丰富
注释
此处可修改配置文件以支持中文:https://blog.csdn.net/qq_30095135/article/details/129171919
四、图形化使用
1、安装
apt-get install doxygen-gui
参考:
1、https://zhuanlan.zhihu.com/p/556127320
2、windows:https://blog.csdn.net/qq_43331089/article/details/124489068
3、linux:https://blog.csdn.net/qq_30095135/article/details/129171919
标签:latex,doxygen,是否,生成,HTML,文档,Linux From: https://www.cnblogs.com/circlelll/p/17922015.html