构建perl模块会产生元文件错误

时间:2011-09-07 19:16:40

标签: perl

我正在Linux机器上安装perl模块(不使用CPAN)。当我运行命令时:

 perl Build.PL

我收到以下错误:

ERROR: Missing required field 'dist_abstract' for metafile
Could not get valid metadata. Error is: Invalid metadata structure.
Errors: Missing mandatory field, 'abstract' (abstract) [Validation: 1.4],
value is an undefined string (abstract) [Validation: 1.4]
at /usr/local/share/perl5/Module/Build/Base.pm line 4559
Could not create MYMETA files

我已经尝试使用谷歌搜索这个错误的一些部分,但没有找到任何解决方案。只是寻找可能导致此错误的线索。

这是一个zip文件的链接,其中包含安装它所需的文件: https://oncourse.iu.edu/access/content/user/brilewis/Filemanager_Public_Files/DataDownloader.zip

3 个答案:

答案 0 :(得分:5)

首先请确保您安装了包Module::Build。 你需要在这个包中使用ungzip一些gzip压缩文件。我没有意识到为什么作者会抓住它们:

gzip -d *.gz

我真的不知道为什么作者存档每个安装文件。对我来说这看起来有点不对劲。

您可以安装所有依赖项(此模块需要一些):

./Build installdeps

最后安装模块本身:

./Build
./Build test
./Build install

但是我必须警告你,这个模块有点奇怪,并且无法保证它有效。

答案 1 :(得分:4)

模块的NAME部分中没有-,例如,

=head1 NAME

Foo::Bar implements a Foo framework.

会失败,但如果你做到了

=head1 NAME

Foo::Bar - implements a Foo framework.

然后它会起作用。

答案 2 :(得分:0)

您的计算机上是否具有超级用户权限?您可以使用cpan实用程序来构建和安装模块。使用cpan非常简单:

$ cpan

之后,它会进行大量配置,只需采用默认值即可。完成后,它将进入cpan>提示符。所有你需要做的就是输入:

cpan> install Module::Name

Module::Name是您尝试安装的模块。检查CPAN存档以获取模块的名称。

如果存在任何依赖关系,CPAN将询问您是否要下载并安装这些依赖关系。说,CPAN将安装依赖项,然后安装模块。

使用cpan是安装在CPAN存档中找到的第三方模块的最佳方法。它负责所有依赖,测试和构建。

尝试通过CPAN安装,然后查看您是否仍有问题。