【发布时间】:2015-10-12 20:13:58
【问题描述】:
我想为计算机视觉领域的一系列项目、模块和库(主要用 C++ 编写)准备一份文档。为此,我查看了 OpenCV 文档,您可能知道 OpenCV 2.4.x 文档基于 Sphinx,这正是我正在寻找的解决方案为了。 Sphinx 的优点是:
- 从语义的角度来看,模块的层次结构。例如,卡尔曼滤波器是运动分析和对象跟踪模块的子模块
- 您可以添加图片以及数学公式
- 相当不错的嵌入式搜索引擎
但我意识到 OpenCV3.0 的 c++ 版本是基于Doxygen 记录的,我不知道为什么!因为它不像 Sphinx 那样有趣。 我知道 Doxygen 可以编译您的代码并提取您的 cmets,这是一个有用的功能。我也知道有一些库(比如 breathe)可以充当 Doxygen 和 Sphinx 之间的桥梁。
现在我的问题是:
- Sphinx 和 Doxygen 是相互替代还是可以一起使用?
- Doxygen 是否具有 Sphinx 的上述特征?
- 您更喜欢哪种文档引擎(Sphinx、Doxygen 或其他引擎)来解决我的问题?
【问题讨论】:
-
Sphinx 说它是一个 Python 文档工具。我知道 Doxygen 可以解析 C++ 语言。
-
这正是我的问题。但我想知道 OpenCV 的 c++ 版本是如何使用 Sphinx 记录的!
-
这是一个很好但可能有点宽泛的问题。它促使我问stackoverflow.com/questions/31594254/…。至于如何用 sphinx 记录 OpenCV2,它使用 sphinx c++ 域,并且在 cmake 构建方案中相对简单。
标签: c++ opencv python-sphinx doxygen documentation-generation