1

我正在尝试在我的 Mac 上安装 Tkx,在 perlbrew 下使用 Perl 5.16.0。不断收到此错误:

Test Summary Report
-------------------
t/tcl.t         (Wstat: 0 Tests: 18 Failed: 1)
  Failed test:  18
Files=8, Tests=54,  8 wallclock secs ( 0.04 usr  0.02 sys +  1.58 cusr  0.83 csys =  2.47 CPU)
Result: FAIL
Failed 1/8 test programs. 1/54 subtests failed.
make: *** [test_dynamic] Error 255
  GAAS/Tkx-1.09.tar.gz
  /usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
  reports GAAS/Tkx-1.09.tar.gz
Running make install
  make test had returned bad status, won't install without force
Failed during this command:
 GAAS/Tkx-1.09.tar.gz                         : make_test NO

当我执行reports GAAS/Tkx-1.09.tar.gz(在 CPAN shell 内)时,我得到了这个:

Distribution: G/GA/GAAS/Tkx-1.09.tar.gz
Fetching 'http://www.cpantesters.org/show/Tkx.yaml'...DONE

Catching error: "CPAN::Exception::yaml_process_error=HASH(0x7fb392b404b8)" at /Users/daryl/perl5/perlbrew/perls/perl-5.16.0/lib/5.16.0/CPAN.pm line 392.
    CPAN::shell() called at -e line 1

在这个过程的早期,我注意到在 ~/.cpan/sources/authors/id 目录中,大约一半的目录归 root 所有,其余的归我所有。我在 .cpan 级别执行了“chown -R $USER”,我所有的其他安装都没有问题。此外,“安装 Tk”成功;我想我可以恢复到 Tk,但我真的很想尝试 Tkx。以至于我跑了“note install Tk”。我相信我很快就会遇到问题,所以如果有这个问题的答案,我很想听听。

4

3 回答 3

2

我最近采用了 Tkx 并发布了 1.10 版,尽管 t/tcl.t 测试 18 失败,但它允许继续安装。

此测试失败已在RT #115662和其他几个地方报告。它似乎是由较新的 Tcl.pm 中错误消息格式的意外但微小的更改引起的。在实际解决问题之前,Tkx 不应该放弃安装。

于 2021-03-03T09:53:35.863 回答
2

Tkx最后一次发布是在十年前,在 CPAN 测试仪中的 FAIL 报告是 PASS 报告的两倍。我不认为你真的想尝试Tkx,除非你有勇气和时间自己修复它。

这确实不是 CPAN 或 cpan 客户端的问题。您的下一步是尝试手动安装它并查看输出是什么。然后调查那个测试在做什么,看看为什么它失败了。

于 2020-04-05T04:40:19.830 回答
1

我尝试Tkx在 macOS Catalina 上安装 perlbrew 与 perl 版本 5.30.1 运行cpanm Tkx失败,包TclTcl失败的是包的测试(首先) failed 20/20 test programs. 0/0 subtests failed.::

"/Users/hakonhaegland/perl5/perlbrew/perls/perl-5.30.1/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Tcl.bs blib/arch/auto/Tcl/Tcl.bs 644
PERL_DL_NONLAZY=1 "/Users/hakonhaegland/perl5/perlbrew/perls/perl-5.30.1/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/call.t .............
No subtests run
t/constants.t ........
No subtests run
t/createcmd.t ........
No subtests run
t/disposal-subs-a.t ..
No subtests run
t/disposal-subs-b.t ..
No subtests run
t/disposal-subs-c.t ..
No subtests run
t/disposal-subs-d.t ..
No subtests run
t/disposal-subs-e.t ..
No subtests run
t/disposal-subs-f.t ..
No subtests run
t/disposal-subs.t ....
No subtests run
t/eval.t .............
No subtests run
t/export_to_tcl.t ....
Failed 4/4 subtests
t/info.t .............
[...]
Files=20, Tests=0,  2 wallclock secs ( 0.07 usr  0.05 sys +  0.39 cusr  0.17 csys =  0.68 CPU)
Result: FAIL
Failed 20/20 test programs. 0/0 subtests failed.

如果我下载发行版并手动运行其中一项测试,则会出现段错误:

$ perl -Iblib/lib -Iblib/arch t/call.t
[1]    66551 segmentation fault  perl -Iblib/lib -Iblib/arch t/call.t

另请参阅错误报告。

于 2020-04-05T07:04:42.950 回答