Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Perl Image::Imlib2对cpantests的依赖性_Perl_Cpan - Fatal编程技术网

Perl Image::Imlib2对cpantests的依赖性

Perl Image::Imlib2对cpantests的依赖性,perl,cpan,Perl,Cpan,我在我的模块的CPantester上遇到了很多错误 (这只是一些额外的东西。像这样,我将图形依赖从主模块中移除,以供那些不需要它的人使用)。 除GNU/Linux之外的所有测试均失败: 由于我只有GNU/Linux,并且总体上缺乏一些经验,所以我在这里寻求一些帮助。 测试结果似乎表明,存在与 它说我应该小心,Image::Imlib2在“Makefile.PL”中,但是它就在那里,你可以看到: Imlib2本身没有这个问题。测试通过所有系统: 有人能给我一个提示吗? 代码位于此处: 非

我在我的模块的CPantester上遇到了很多错误 (这只是一些额外的东西。像这样,我将图形依赖从主模块中移除,以供那些不需要它的人使用)。 除GNU/Linux之外的所有测试均失败:

由于我只有GNU/Linux,并且总体上缺乏一些经验,所以我在这里寻求一些帮助。 测试结果似乎表明,存在与

它说我应该小心,Image::Imlib2在“Makefile.PL”中,但是它就在那里,你可以看到:

Imlib2本身没有这个问题。测试通过所有系统:

有人能给我一个提示吗? 代码位于此处:


非常感谢。

当我尝试使用
cpan
命令在Cygwin上安装此模块时:

  • cpan识别出我需要
    映像::Imlib2
    模块(
    警告:未找到必备映像::Imlib2 0

  • cpan下载并尝试构建
    Image::Imlib2

  • 生成
    Image::Imlib2
    失败(
    必须先安装Imlib2库,然后才能安装Image::Imlib2…Make出现一些问题,无法安装

  • cpan继续构建
    EBook::MOBI::Image
    …继续,但成功的机会有限

  • 当然,
    Ebook::MOBI::Image
    的测试也失败了

  • Makefile.PL
    中的
    PREREQ\u PM=>…
    指令告诉cpan努力满足先决条件,但正如您所看到的,即使先决条件安装失败,它也将继续构建。
    PREREQ\u PM
    指令对于CPAN上的大多数模块来说已经足够好了,但是对于需要CPAN无法自行安装的外部库的模块来说就不行了

    我认为,在这种情况下,如果无法加载
    Image::Imlib2
    模块,您希望cpan测试人员退出,而这样做的地方就在
    Makefile.PL
    的早期

    if (!eval "require Image::Imlib2") {
        print "This distribution requires Image::Imlib2!\n";
        exit 0;
    }
    

    对于不能或不会安装
    Image::Imlib2
    的系统,退出
    Makefile.PL
    将导致测试仪报告
    N/a
    的结果,而不是
    失败

    太多,我会尽快检查(第一顿晚餐:-))但我首先需要了解如何使用dzil构建过程影响Makefile.PL。我使用Dist::Zilla::Plugin::Run在构建后修改Makefile.PL,方法是将它添加到“[Run::AfterBuild]”部分中的Dist.ini中:“Run=sed-I'5iif(!eval“require Image::Imlib2”){print”--此发行版需要Image::Imlib2!“退出0;}“%d/Makefile.PL”