doxygen + sphinx(呼吸)用于记录

时间:2014-07-16 08:24:31

标签: doxygen python-sphinx documentation-generation

我是doxygen和sphinx使用的新手。我要求创建文件 用C语言编写。 我们的想法是从doxygen为每个文件生成xml文件,然后使用呼吸作为sphinx的桥梁来创建html页面。 我成功生成了xml文件,并且能够获取html页面。 但是,我看到每个html文件都包含所有文件内容,而不是每个文件/目录中的每个html。

ie. dir1 => file1.h and file1.c
    dir2 => file2.h and file2.c

输出:

file1.html => file1.xml & file2.xml
file2.html => file1.xml & file2.xml

预期输出

file1.html to contain file1.xml(both header the implementation)
file2.html for file2.xml

以下是设置: 的Doxyfile(doxygen的)

GENERATE_XML = YES

conf.py(斯芬克斯)

breathe_projects = { <dir1_name>: <xml_path>,
                    <dir2_name>: <xml_path> }

有人可以帮我设置正确的配置以获得预期的输出吗?

1 个答案:

答案 0 :(得分:4)

对于上述要求,应创建每个目录的Doxyfile。 这将生成基于Doxyfile

的xml文件
i.e. for the files
dir1 => file1.h and file1.c
dir2 => file2.h and file2.c

create
Doxyfile1 in dir1
Doxyfile2 in dir2

这会为每个目录生成单独的index.xml文件。

在Sphinx配置(conf.py)中,应提供xml的位置

i.e. breathe_projects = { <dir1_name>: <dir1/xml_path>,
                          <dir2_name>: <dir2/xml_path> }

通过上述更改,单独的html文件 - file1.html(与file1.h和file1.c)和 生成file2.html(带有file2.h和file2.c)。