2012-08-14 95 views
3

当某个Perl项目的Build.pl在以前未用于Perl开发的系统上运行时,如果用户想要将某些程序包预先安装到安装中,它会一次又一次地中断。运行Build.pl非交互式

有没有办法让Build.PL的非交互式默认运行,而不必看几个小时,并反复按“进入”?

回答

4

PERL_MM_USE_DEFAULT=1

如果设置为真值那么MakeMaker里面的提示功能将始终返回默认值,而无需等待用户输入。

Works the same in Module::Build.


PERL_EXTUTILS_AUTOINSTALL=--default-deps

--alldeps将安装所有功能,同时--defaultdeps将只安装的功能,其默认的答案是 '是'。


如果使用CPAN,还配置prerequisites_policy=follow

这需要照顾大多数提示。有几个坏苹果仍然需要某种形式的人为干预。 Distroprefs照顾他们,看到distroprefs directory

+0

这样做。然而,它也安装了“推荐”软件包,也是我不想要的。我不明白为什么这不是由Build.PL的使用打印输出解释的。 – dronus 2012-08-14 19:53:37

+0

因为这个想法还没有出现在任何人身上。如果你想要这个功能,[提交一个bug](https://rt.cpan.org/Dist/Display.html?Name=Module-Build)。 – daxim 2012-08-14 19:59:29

+0

也许我做错了什么?我期望任何下载Perl项目源代码并尝试构建它的人都会遇到这个问题。 – dronus 2012-08-14 22:17:16