perl – ExtUtils :: MakeMaker:如何为测试和/或安装指定二进制可执行先决条件?

我正在使用ExtUtils :: MakeMaker从Makefile.PL为Perl包创建Makefile.

Perl包(和测试)依赖于Perl包通过Perl的system()调用的可执行文件.

有没有办法可以将可执行文件指定为ExtUtils :: MakeMaker的先决条件.

最佳答案 只需在Makefile.PL中的任何位置添加此行:

system("$executable", "--version") == 0 or die "$executable: $?";

您可能还希望在$PATH以外的其他位置搜索$executable,并且可能希望更好地诊断错误,但这基本上就是您应该做的.对于libintl-perl,我甚至在Makefile.PL中编译和链接C代码.

不幸的是,您不能轻易地将该技术移植到Module :: Build,并且出于同样的原因,您不能将它与Dist :: Zilla或类似的构建工具一起使用.

点赞