如何解决当路径为目录时,Doxygen 引用链接失败
我使用 doxygen 生成 C++ 项目文档,在 Illegal Argument Exception
文件中使用 reference link @ref
。一些 .md
会在 html 页面中生成真正的超链接,而另一些则不会(当 @ref
文件的真实路径更深时)。
重现:
- Doxygen 版本:1.9.2(来自 github repo,最新提交)
- 系统:ubuntu 20.04
- 项目结构:
.md
Doxyfile:
- docs
- root.md
- Doxyfile
- src
- rok_core
- doc
- test.md
- do
- test.md
...
INPUT: root.md \
../src/rok_core/doc/test.md \
../src/rok_core/do/test.md \
...
:
doc/root.md
Rok {#mainpage}
===
- @ref test
- @ref test2
:
src/rok_core/doc/test.md
test {#test}
=====
:
src/rok_core/do/test.md
预期行为:test 和 test2 都是主页中的链接(从 root.md 生成),但实际上 test2 {#test2}
=====
是链接但 test2
不是链接。
好吧,我终于明白是我的错了。我提供的示例可以生成所有@ref 链接。我写错了涵盖我的 doc 目录的 EXCLUDE,导致了这个愚蠢的问题。非常抱歉。
解决方法
根据问题中的信息并将 INPUT
标记更正为:
INPUT= root.md \
../src/rok_core/doc/test.md \
../src/rok_core/do/test.md
(Doxyfile 的其余部分留空)。 我启动了 doxygen (1.9.2 (97cb0de4dab1f9eb77325f7ee9f46dcaed8b0c69)) 结果是:
其中两个 test
都是链接(指向正确的位置)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。