使用Doxygen将链接插入另一个文件中的function?
我有两个C源文件。 对文件A
的函数bar()
注释需要引用文件B
的函数foo()
。 我怎样才能建立这个链接?
我试过了:
-
写一些像:
Bc::foo()
希望doxygen会转到文件B
并在那里找到函数foo
。 -
也试过简单
::foo()
但没有帮助。 -
然后我尝试给文件
Bc
一个特殊的标记名,如//! @file specialtag
//! @file specialtag
在Bc
第一行,然后在我的评论中做了specialtag::foo()
,但没有太多改变。 -
我试图用
\ref
和\link
强制链接,但即使这样也无济于事。
//! @file
//! @file
行存在于Ac
和Bc
因此doxygen应该知道代码。
编辑
我尝试了@doxygen的建议,但没有运气。 我做了一个示例项目,以显示我遇到问题的地方,它在这里: http : //www.filedropper.com/testdoxygen2tar
我使用了使用doxygen -g
制作的默认设置文件。 我得到的输出:
您可以看到foobar函数未链接到。
编辑2
发现了问题。 函数foo
没有文档,因此没有生成任何页面,所以doxygen当然没有页面可以链接到。 (我在启用SOURCE_BROWSER
选项的情况下生成文档,并希望生成函数定义的链接)
这非常简单。 这是一个使用默认配置文件( doxygen -g
)的最小示例:
首先使用以下内容创建文件foo.c:
/** @file */ /** Function foo, see also bar(). */ void foo() { }
然后使用以下内容创建文件bar.c:
/** @file */ /** Function bar, see also foo(). */ void bar() { }
运行doxygen并在HTML输出中观察两个函数都将链接到另一个函数。