我正在尝试弄清楚如何使用Doxygen::Filter::Perl https://metacpan.org/pod/Doxygen::Filter::Perl生成 Perl 文件的文档。我从一个非常简单的文件开始只是为了看看我是否可以让它工作(test_doxygen.pl
):
#! /usr/bin/env perl
#** @file test_doxygen.pl
# @brief Testing Doxygen using Doxygen::Filter::Perl
#
# Description of the purpose of this file
#
# @author Håkon Hægland ([email protected] /cdn-cgi/l/email-protection)
#
# @bug No known bugs.
#
#*
#** @class main
# The main class
#*
use strict;
use warnings;
my $b = add_one(1);
#** @function public add_one ($par1)
# @brief A brief description of the function
#
# A detailed description of the function
# @params $par1 required A number
# @retval value Input value plus one1
#*
sub add_one {
my ($par1) = @_;
return $par1 + 1;
}
然后我安装了 Doxygen::Filter::Perl 并使用Doxyfile
由包维护者在metacpan.org 提供的配置文件(链接在这里 https://metacpan.org/source/JORDAN/Doxygen-Filter-Perl-1.62/Doxyfile)
并将其放在与上面脚本相同的目录中。我改变了一行Doxyfile
: 的值INPUT
标签已更改为lib
到空字符串,以便仅搜索当前目录中的源文件。
我使用的是 Ubuntu 14.04,所以我安装了 Doxygensudo apt-get install doxygen
,(我还需要安装graphviz
: sudo apt-get install graphviz
)然后我终于跑了
$ doxygen
从终端窗口。生成的 HTML 文件doc/html/index.html
包含有关该文件和作者的文档,但不包含有关该文件的任何文档add_one
子程序。
我在这里缺少什么?
Update
下面是类视图在 Chromium 浏览器中的样子:
如所见,没有参考/链接add_one
子程序。
这是文件视图:
所以问题在于处理“我的”变量声明。它将值设置为私有:并且 doxygen 永远不会返回。我在 Perl.pm 中添加了一行来解决这个问题,现在它应该可以为您工作了。由于您使用的是 pl 文件而不是 pm 文件,因此我还对 Doxyfile 进行了更改,因此您需要从发行版中获取新文件。我已将 1.71 发布到 Github 和 CPAN,并用您的确切示例对其进行了测试。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)