【问题标题】:Doxygen does not find files when specifying Source directory指定源目录时 Doxygen 找不到文件
【发布时间】:2013-08-17 11:14:47
【问题描述】:

你好,

我尝试使用 doxygen 从一组文件夹中生成代码文档。我的文件夹结构是这样的:

+root
+-include/
+-include/subdir/file.h
+-src
+-src/subdir/file.cpp
+-Documentation/doxygen.config

然后在配置文件中,我在“默认”配置文件中有以下设置(在文档和其他问题中说明):

INPUT                  = "../include" "../src"
RECURSIVE              = YES

问题是在运行此配置时,HTML 输出不包含任何文档。当我添加所有单个文件时,例如

INPUT  = "../include/subdir/file.h"

对于输入,它会为这些文件生成文档。为了让 doxygen 找到文件并创建文档,我需要在默认配置中添加其他设置吗?

我在 Linux Ubuntu (12.04 LTS) 上使用 doxygen 1.8.4。

提前感谢任何提示或提示。

【问题讨论】:

  • 我自己不倾向于使用 RECURSIVE,因为它往往会带来太多。但是,如果您 (a) 指定文件夹路径,即 ../include/subdir,关闭递归,和/或 (b) 尝试不带引号的 ../include 和 ../src,会发生什么?除了比较你和我的 doxyfile 之外应该没什么区别。
  • 今天我遇到了与您描述的类似的问题,问题出在FILE_PATTERNS 设置中。在我清除它之后,doxygen 将按预期运行。
  • @jcxz 好吧,我尝试了你的 FILE_PATTERNS 技巧,但它对我不起作用......我仍然需要列出所有目录......
  • 您的输入路径是相对于包含 Doxygen 配置文件的目录指定的。这也是您调用 Doxygen 的目录吗? Doxygen 可能正在解析来自 PWD 的相对路径,而不是包含配置文件的目录。另外,请记住,头文件需要在文档中包含“@file”指令 - 如果文件在 INPUT 选项 (?) 中明确列出,则可以绕过此指令。

标签: doxygen


【解决方案1】:

你可以简单地做../root而不是同时声明../include../src

还要确保不要在完整的绝对路径周围加上引号,因为没有这些也可以正常工作。

确保 recursive 设置为 YES。

将目录放入 INPUT 标签对我有用。

【讨论】:

    【解决方案2】:

    我不确定你是否还需要这个,但我已经为此苦苦挣扎了一段时间并找到了解决方案(至少对我来说)!

    INPUT 留空,并将 RECURSIVE 标记设置为 YES。我不是专家,也许其他更了解这些标签的人可以给出更好的答案,我只是偶然发现了解决方案

    在源文件的最顶部,放置:

    /// \file
    

    这告诉 Doxygen 将它包含在 HTML 中,它将显示在文件选项卡中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-23
      • 1970-01-01
      • 1970-01-01
      • 2022-11-07
      • 2014-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多