[Bioperl-l] Bioperl CPAN installation issues
Francisco J. Ossandón
fossandonc at hotmail.com
Tue Mar 13 18:13:58 UTC 2012
This has happened to me since long ago in previous installations, but I had
forgot about it until today...
Looking around in Google led me to this page:
http://mail.pm.org/pipermail/pdx-pm-list/2010-April/005803.html
It says:
###
MakeMaker (MM) has to use heuristics to find the line where $VERSION is
defined for each .pm file and eval that line. In the case of
Bio::Ontology::SimpleGOEngine::GraphAdaptor it does not define a $VERSION
for
itself, which is fine, but it does mention it later on.
sub new {
my( $class ) = @_;
$class = ref $class || $class;
my $self=
( defined $Graph::VERSION && $Graph::VERSION >= 0.5 ) ?
bless ( {}, $class ) :
bless ( {}, 'Bio::Ontology::SimpleGOEngine::GraphAdaptor02' );
$self->{_graph}=new Graph::Directed;
$self->{_vertex_attributes}={};
$self->{_edge_attributes}={};
return $self;
}
MM->parse_version picked up on that, tried to eval it, and it blew up.
###
So apparently, the "( defined $Graph::VERSION && $Graph::VERSION >= 0.5 ) ?"
line is read when the CPAN Client is trying to find a $VERSION that it can
use for upgrade reference, and it gets confused at this point.
Since "Bio::Ontology::SimpleGOEngine::GraphAdaptor" depends on
"Bio::Root::Root", maybe adding a "use Bio::Root::Version;" to the Root.pm
module will let the $VERSION global variable to reach the GraphAdaptor
module and all the other modules who depends on it??? I noticed that
"RootI.pm" have a Bio::Root::Version dependency but Root.pm dont have it
(at least explicitly). I still need more experience using global variables,
but it could be that the reason that Bioperl modules shows "undef" after
installation is because CPAN dont reach $VERSION properly for the all
modules of the bundle.
Cheers,
Francisco J. Ossandon
-----Mensaje original-----
De: bioperl-l-bounces at lists.open-bio.org
[mailto:bioperl-l-bounces at lists.open-bio.org] En nombre de Fields,
Christopher J
Enviado el: martes, 13 de marzo de 2012 13:40
Para: Francisco J. Ossandón
CC: <bioperl-l at bioperl.org>
Asunto: Re: [Bioperl-l] Bioperl CPAN installation issues
That is a bit odd, but it has been reported before. I haven't been able to
dedicate any time to tracing it down, so any help is appreciated:
https://redmine.open-bio.org/issues/3041
chris
On Mar 13, 2012, at 11:21 AM, Francisco J. Ossandón wrote:
> Hello,
>
> Today I was updating my Perl modules using the CPAN client, through
> the "upgrade" command (Im using strawberry perl, not activestate), and
> something weird popped up.
>
>
>
> I have installed Bioperl version 1.006901, which is the same one in
> CPAN, but the client don't recognize the installed Bioperl version and
> throws an "undef" version instead, so it reinstall the whole thing again
if told so.
> Also, while Perl was checking the versions of the installed modules to
> compare them to CPAN latest versions, it throws an error with a lot of
> code saying that it could not eval
"Bio\Ontology\SimpleGOEngine\GraphAdaptor.pm".
>
>
>
> Please see the output below and check the "Bio::Align::AlignI" and
> "Bio\Ontology\SimpleGOEngine\GraphAdaptor.pm" outputs.
>
> #####
>
> cpan> upgrade
>
> Database was generated on Mon, 12 Mar 2012 18:06:06 GMT
>
>
>
> Package namespace installed latest in CPAN file
>
> DBD::mysql 4.018 4.020
> CAPTTOFU/DBD-mysql-4.020.tar.gz
>
> IO::Socket::SSL 1.39 1.59
> SULLR/IO-Socket-SSL-1.59.tar.gz
>
> Bio::Align::AlignI undef 1.006901
> CJFIELDS/BioPerl-1.6.901.tar.gz
>
> Could not eval '
>
> package ExtUtils::MakeMaker::_version;
>
> no strict;
>
> BEGIN { eval {
>
> # Ensure any version() routine which might have
> leaked
>
> # into this package has been deleted. Interferes
> with
>
> # version->import()
>
> undef *version;
>
> require version;
>
> "version"->import;
>
> } }
>
>
>
> local $Graph::VERSION;
>
> $Graph::VERSION=undef;
>
> do {
>
> ( defined $Graph::VERSION && $Graph::VERSION >=
> 0.5
> ) ?
>
> };
>
> $Graph::VERSION;
>
> ' in
> C:\strawberry\perl\site\lib\Bio\Ontology\SimpleGOEngine\GraphAd
>
> aptor.pm: syntax error at (eval 429) line 17, at EOF
>
> Could not eval '
>
> package ExtUtils::MakeMaker::_version;
>
> no strict;
>
> BEGIN { eval {
>
> # Ensure any version() routine which might have
> leaked
>
> # into this package has been deleted. Interferes
> with
>
> # version->import()
>
> undef *version;
>
> require version;
>
> "version"->import;
>
> } }
>
>
>
> local $Graph::VERSION;
>
> $Graph::VERSION=undef;
>
> do {
>
> ( defined $Graph::VERSION && $Graph::VERSION >=
> 0.5
> ) ?
>
> };
>
> $Graph::VERSION;
>
> ' in
> C:\strawberry\perl\site\lib\Bio\Ontology\SimpleGOEngine\GraphAd
>
> aptor.pm: syntax error at (eval 430) line 17, at EOF
>
> Error::Simple undef 0
SHLOMIF/Error-0.17017.tar.gz
>
> #####
>
>
>
> Cheers,
>
>
>
> Francisco J. Ossandon
>
>
>
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
_______________________________________________
Bioperl-l mailing list
Bioperl-l at lists.open-bio.org
http://lists.open-bio.org/mailman/listinfo/bioperl-l
More information about the Bioperl-l
mailing list