我已经研究了多个使用CMake构建的C ++库并运行Doxygen来生成HTML文档。在这些库中的每一个库中,文档都被内置到CMake“build”目录中的“html”文件夹中,并且永远不会被任何人看到。
因为说实话,大多数人根本不喜欢阅读文档 - 更不用说搜索它了。
这导致了一些问题:
1)根据Filesystem Hierarchy Standard
4.11.3。具体选择 如果安装了相应的子系统,则以下目录或目录的符号链接必须位于/ usr / share中: 目录说明 ... doc杂项文档(可选)
2)我想说,你可以在安装目标中添加一个命令来复制前缀/ usr / share / doc中的doxygen
在构建目录中首先使用doxygen,看起来好吧恕我直言。
3)通常使用具有包管理器的发行版,您可以创建一个doc包,因此想要“过去”doc的用户只需要获得与二进制包具有相同版本的包doc ...
注意:在Archlinux doc上附带了库,在Debian上就像你有package-doc一样,对于自制的IIRC来说也是如此
注意:您还可以配置doxygen,因此生成的错误消息可以由您的ide(例如QtCreator)解析,就像常规的gcc错误一样,这样您就可以在每次构建的错误日志中看到它们。
您似乎有两个非常不同的问题:
A.构建软件的开发人员甚至不知道他们正在使用的构建的doxygen部分
B.普通用户不知道有文件可用(来自doxygen或其他)
B.这不是一个真正的技术问题所以我将专注于开发人员。首先你应该让构建的doxygen部分“选择退出”,我的意思是默认启用。只需使用常规(和假的)cmake依赖项;换句话说就是骗到cmake并假装构建doxygen是构建库所必需的。在doxygen规则/命令中,使用cmake COMMENT功能,如下所示:COMMENT“doxygen building documentation in $ {DOXYOUT}”。由于通常需要一段时间,开发人员会注意到。在构建的最后使用cmake消息“提醒,你刚刚在$ {DOXYOUT}中构建了文档”
现在回到您更具体的问题: