在Ubuntu 14.04中安装Tkx perl模块时出现问题

时间:2016-06-28 04:49:16

标签: perl ubuntu cpan tkx

为了在Ubuntu 14.04上安装一个名为PrimerMapper的包来设计引物,我需要安装一个名为 Tkx 的perl模块,但在安装它时会遇到麻烦。所以,请帮助我解决这个错误。 为了便于您快速参考,我将粘贴完整的安装命令。非常感谢

**adnan@adnan-Inspiron-N5110[Tkx-1.09]** sudo perl Makefile.PL            
Writing Makefile for Tkx
Writing MYMETA.yml and MYMETA.json

**adnan@adnan-Inspiron-N5110[Tkx-1.09]** sudo make                        
Skip blib/lib/Tkx/Tutorial.pod (unchanged)
Skip blib/lib/Tkx.pm (unchanged)
Skip blib/lib/Tkx/MegaConfig.pm (unchanged)
Skip blib/lib/Tkx/LabEntry.pm (unchanged)
cp tkx-prove blib/script/tkx-prove
/usr/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/tkx-prove
cp tkx-ed blib/script/tkx-ed
/usr/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/tkx-ed
Manifying blib/man1/tkx-ed.1p
Manifying blib/man3/Tkx::MegaConfig.3pm
Manifying blib/man3/Tkx::LabEntry.3pm
Manifying blib/man3/Tkx::Tutorial.3pm
Manifying blib/man3/Tkx.3pm

**adnan@adnan-Inspiron-N5110[Tkx-1.09]** sudo make test                  
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/LabEntry.t ...... 1/2  (in cleanup) Can't call method "DeleteCommand" on an undefined value at /usr/local/lib/perl/5.18.2/Tcl.pm line 655 during global destruction.
t/LabEntry.t ...... ok   
t/mega-config.t ... ok   
t/mega.t .......... ok   
t/nul-char.t ...... ok   
t/tcl-callback.t .. 1/7  (in cleanup) Can't call method "DeleteCommand" on an undefined value at /usr/local/lib/perl/5.18.2/Tcl.pm line 655 during global destruction.
t/tcl-callback.t .. ok   
t/tcl.t ........... 1/18 # Test 18 got: "Tcl error 'Foo at /usr/local/lib/perl/5.18.2/Tcl.pm line 585.\n' while invoking scalar result call:\n\t\"error Foo\" at /usr/local/lib/perl/5.18.2/Tcl.pm line 588.\n\tTcl::call('Tcl=SCALAR(0x1b2ce48)', 'error', 'Foo') called at /media/windows/NGS/GATK_FINAL_PIPELINE/PrimerMapper-master/Tkx-1.09/blib/lib/Tkx.pm line 329\n\teval {...} called at /media/windows/NGS/GATK_FINAL_PIPELINE/PrimerMapper-master/Tkx-1.09/blib/lib/Tkx.pm line 329\n\tTkx::i::call('error', 'Foo') called at /media/windows/NGS/GATK_FINAL_PIPELINE/PrimerMapper-master/Tkx-1.09/blib/lib/Tkx.pm line 51\n\tTkx::AUTOLOAD('Foo') called at t/tcl.t line 38\n\teval {...} called at t/tcl.t line 38\n" (t/tcl.t at line 39)
#    Expected: "Foo at t/tcl.t line 38.\n"
#  t/tcl.t line 39 is: ok($@, "Foo at @{[__FILE__]} line @{[__LINE__ - 1]}.\n");
t/tcl.t ........... Failed 1/18 subtests 
t/tk.t ............ 12/12        (in cleanup) Can't call method "DeleteCommand" on an undefined value at /usr/local/lib/perl/5.18.2/Tcl.pm line 655 during global destruction.
t/tk.t ............ ok     
t/utf8.t .......... ok   

Test Summary Report
-------------------
t/tcl.t         (Wstat: 0 Tests: 18 Failed: 1)
  Failed test:  18
Files=8, Tests=54,  9 wallclock secs ( 0.15 usr  0.03 sys +  1.85 cusr  0.31 csys =  2.34 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

3 个答案:

答案 0 :(得分:1)

错误是模块的测试没有成功通过。

我首先尝试的一件事是尝试使用cpancpanminuscpan Tkxcpanm Tkx)安装模块。您(或Makefile.PL)可能遗漏了可能导致此错误的内容。

我看到你已经在CPAN上开了一个bug report。您可以在cpantesters中看到此模块已经破坏了测试(您可以查看您的特定Perl版本),并且还有另一个bug report从5年前开始报告与#相同版本的损坏测试39; s目前在CPAN(1.09)。

考虑到这一点,我认为您的选择是跳过测试并查看它是否适用于您的目的。

答案 1 :(得分:1)

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

测试失败似乎是由于对较新 Tcl.pm 中错误消息格式的意外但微小的更改造成的。在实际解决问题之前,Tkx 不应中止安装。

答案 2 :(得分:0)

已经有了Ubuntu的Tkx打包版本,所以应该采取一切措施来获取Tkx及其任何依赖项:

sudo apt-get install libperl-tkx