In Ubuntu 14.04 LTS Circos shows missing PERL modules

1,350 views
Skip to first unread message

sahana....@gmail.com

unread,
Aug 1, 2014, 1:51:34 AM8/1/14
to circos-data-...@googlegroups.com

  Hello,
 
          I was running CIRCOS without any problem with Ubuntu 13.04 with systems Perl package v5.14.2
          Currently I updated Ubuntu. My current Ubuntu version is 14.04 LTS with systems perl package v5.18.2
          And the problem with Circos starts now.

         
         when running Circos it gives ERROR (which is as follows)

cuser@Node-2:~/software/circos/current/example/etc$ circos

*** REQUIRED MODULE(S) MISSING ***

You are missing one or more Perl modules, or these modules failed to load. Use CPAN to install it as described in this tutorial

http://www.circos.ca/documentation/tutorials/configuration/perl_and_modules

missing File::Temp
missing GD::Polyline
missing List::Util
missing SVG
missing Statistics::Basic
missing Storable
cuser@Node-2:~/software/circos/current/example/etc$


    I checked whether all Perl modules are ok or not by following

cuser@Node-2:~/software/circos/current/bin$ circos -modules
ok     1.3301 Carp
ok       0.37 Clone
ok       2.56 Config::General
ok       3.47 Cwd
ok      2.151 Data::Dumper
ok       2.53 Digest::MD5
ok       2.84 File::Basename
ok       3.47 File::Spec::Functions
missing            File::Temp
ok       1.51 FindBin
ok       0.39 Font::TTF::Font
ok       2.53 GD
missing            GD::Polyline
ok       2.42 Getopt::Long
ok       1.16 IO::File
ok       0.33 List::MoreUtils
missing            List::Util
ok       0.01 Math::Bezier
ok     1.9993 Math::BigFloat
ok       0.06 Math::Round
ok       0.08 Math::VecStat
ok       1.03 Memoize
ok       1.32 POSIX
ok       1.13 Params::Validate
ok       1.64 Pod::Usage
ok          2 Readonly
ok 2013031301 Regexp::Common
missing            SVG
ok       1.19 Set::IntSpan
missing            Statistics::Basic
missing            Storable
ok       1.17 Sys::Hostname
ok       2.02 Text::Balanced
ok       0.59 Text::Format
ok     1.9726 Time::HiRes


 6 modules shows missing . I tried updating all missing perl modules but they are all up to date

cpan shell -- CPAN exploration and modules installation (v2.05)
Enter 'h' for help.

cpan[1]> install File::Temp
Reading '/home/cuser/.cpan/Metadata'
  Database was generated on Wed, 30 Jul 2014 17:06:25 GMT
File::Temp is up to date (0.2304).

cpan[2]> install GD::Polyline
GD::Polyline is up to date (0.2).

cpan[3]> install List::Util
List::Util is up to date (1.39).

cpan[4]> install SVG
SVG is up to date (2.59).

cpan[5]> install Statistics::Basic
Statistics::Basic is up to date (1.6607).

cpan[6]> install Storable
Storable is up to date (2.51).

cpan[7]> ^Z
[1]+  Stopped                 sudo perl -MCPAN -e shell
cuser@Node-2:~/software/circos/current/bin$

 After this when i ran gddiag no gddiag.png produced instead an ERROR occurs (as follows)

cuser@Node-2:~/software/circos/current/bin$ gddiag
Perl API version v5.14.0 of Storable does not match v5.18.0 at /usr/share/perl/5.18/XSLoader.pm line 92.
Compilation failed in require at /home/cuser/software/circos/current/bin/gddiag line 123.
BEGIN failed--compilation aborted at /home/cuser/software/circos/current/bin/gddiag line 123.
cuser@Node-2:~/software/circos/current/bin$

       Please help me to solve this problem

Regards
SAHANA GHOSH

Martin Krzywinski

unread,
Aug 5, 2014, 9:59:29 PM8/5/14
to circos-data-...@googlegroups.com
> Perl API version v5.14.0 of Storable does not match v5.18.0 at /usr/share/perl/5.18/XSLoader.pm line 92.

From this error message, it looks like you have at least two versions of Perl on your system - 5.14 and 5.18. 

It looks like when you run the CPAN shell you are not running the same perl binary as called by Circos.

Circos calls the first perl in your PATH. Whatever this returns

> which perl

is the perl that Circos uses.

When you updated Ubuntu, it may have updated your perl to 5.18, whereas you had been using 5.14. Now 5.18 is missing the modules you installed for 5.14 (modules are specific to a version of Perl, so anytime you upgrade perl you need to reinstall the moduels).




Martin Krzywinski
science + art




--
You received this message because you are subscribed to the Google Groups "Circos" group.
To unsubscribe from this group and stop receiving emails from it, send an email to circos-data-visual...@googlegroups.com.
To post to this group, send email to circos-data-...@googlegroups.com.
Visit this group at http://groups.google.com/group/circos-data-visualization.
For more options, visit https://groups.google.com/d/optout.

Erica Fary

unread,
Jul 15, 2015, 2:36:01 PM7/15/15
to circos-data-...@googlegroups.com
Hi everyone,

I have encountered the same problem as described above and below, probably because I have 2 perl versions on my computer (/usr/bin/perl5.18.2 and /usr/bin/perl).
However, I try to install the missing packages (Statistics::Basic and Config::General) from -MCPAN or manually with >wget [...] for both versions but this has not fixed the problem.

Could anyone provide me a solution ??

Thank you in advance ! Regards,

Erica F.

Run on ubuntu 14.04, I received the following message when running : >perl [...]/circos -conf [...]/circos.conf :
[...]
Parse errors: No plan found in TAP output
Files=36, Tests=0,  0 wallclock secs ( 0.08 usr  0.01 sys +  0.18 cusr  0.05 csys =  0.32 CPU)
Result: FAIL
Failed 33/36 test programs. 0/0 subtests failed.
make: *** [test_dynamic] Erreur 255
  JETTERO/Statistics-Basic-1.6611.tar.gz
one dependency not OK (Number::Format); additionally test harness failed
  /usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
  reports JETTERO/Statistics-Basic-1.6611.tar.gz
Running make install
  make test had returned bad status, won't install without force
user@marie:~$ cd software/circos/circos
user@marie:~/software/circos/circos$ perl bin/circos -conf etc/circos.conf

*** REQUIRED MODULE(S) MISSING OR OUT-OF-DATE ***

You are missing one or more Perl modules, require newer versions, or some modules failed to load. Use CPAN to install it as described in this tutorial

http://www.circos.ca/documentation/tutorials/configuration/perl_and_modules

missing Statistics::Basic
  error Can't locate Statistics/Basic.pm in @INC (you may need to install the Statistics::Basic module) (@INC contains: /home/user/software/circos/circos/bin/lib /home/user/software/circos/circos/bin/../lib /home/user/software/circos/circos/bin /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/perl/5.18.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.18 /usr/share/perl/5.18 /usr/local/lib/site_perl .) at (eval 58) line 1.
missing Config::General
  error Config::General version 2.54 required--this is only version 2.52 at (eval 8) line 1.

Shantanu Kumar

unread,
Aug 11, 2015, 12:23:20 AM8/11/15
to Circos
As Martin suggested, it's PATH related issue. Your system admin can easily fix this for you. Cheers :)

Best,
Shantanu

Martin Krzywinski

unread,
Aug 11, 2015, 5:38:55 PM8/11/15
to circos-data-...@googlegroups.com
If you have two versions of Perl on your system, you must manage your PATH well so that you're using the right version.

Each perl has its own library tree. A module installed for one version is not detected by any other version. 

You should not be using "perl circos" as the command. This is awkward and circos already calls the perl that is in your PATH automatically using the 'env' utility.

First, check which perl is in your path. For example,

> which perl
/usr/bin/perl

If you want to be using the other perl (perl5.18.2) in general (I suggest using only one unless you have pressing legacy issues), then 

cd /usr/bin
mv perl perlX.XX.X
ln -s perl5.18.2 perl

Now, when you call "perl" you'll be calling the 5.18.2 version.

Alternatively (I don't recommend this), you can edit bin/circos in the distribution and change the first line to

#!/usr/bin/perl.5.18.2

or whatever the exact version of perl you want to use. Note that you'll have to do this every time you download a new version. That's why I don't recommend it.

In terms of modules, you want to make sure that you're actually installing the module using the right version of perl. 

perl5.18.2 -MCPAN -e shell

will bring up the CPAN shell for 5.18.2. You'll need to make sure that you can write to the library directory of 5.18.2, or install the modules as root.

The error message you posted indicates a failed Statistics::Basic installation for "perl" because Number::Format is missing.

The second error message indicates that you haven't installed Statistics::Basic for "perl5.18.2".









Martin Krzywinski
science + art


--
Reply all
Reply to author
Forward
0 new messages