<?xml version="1.0" encoding="windows-1252"?>
<node id="984212" title="Incompatible modules?" created="2012-07-28 14:04:29" updated="2012-07-28 14:04:29">
<type id="115">
perlquestion</type>
<author id="905256">
reubs85</author>
<data>
<field name="doctext">
&lt;p&gt;Hello Monks,&lt;/p&gt;
&lt;p&gt;I use bioperl a lot and have come across an issue with what appears to be an incompatibility between a couple of modules I am attempting to use. To set the scene, the first few lines of my script looks like this:&lt;/p&gt;
&lt;code&gt;#!/usr/bin/perl

use strict;
use warnings;

use Bio::Tools::Run::Alignment::TCoffee;
use Bio::Tools::Run::StandAloneBlastPlus;

# do loads of stuff...

my $factory=Bio::Tools::Run::Alignment::TCoffee-&gt;new();&lt;/code&gt;
&lt;p&gt;The error I'm thrown is this:&lt;/p&gt;
&lt;code&gt;Use of uninitialized value $name in pattern match (m//) at /usr/share/perl5/Bio/Tools/Run/WrapperBase/CommandExts.pm line 499.

------------- EXCEPTION: Bio::Root::Exception -------------
MSG: Command 'run' not registered
STACK: Error::throw
STACK: Bio::Root::Root::throw /usr/share/perl5/Bio/Root/Root.pm:472
STACK: Bio::Tools::Run::WrapperBase::set_parameters /usr/share/perl5/Bio/Tools/Run/WrapperBase/CommandExts.pm:1203
STACK: Bio::Tools::Run::WrapperBase::new /usr/share/perl5/Bio/Tools/Run/WrapperBase/CommandExts.pm:505
STACK: Bio::Tools::Run::Alignment::TCoffee::new /usr/share/perl5/Bio/Tools/Run/Alignment/TCoffee.pm:612
STACK: /home/s0451486/usr/bin/t_coffeeTest.pl:13
-----------------------------------------------------------
&lt;/code&gt;

&lt;p&gt;The script always quits at the line where I try and use the program 'TCoffee' (a DNA alignment tool, in case anyone's wondering).&lt;/p&gt;
&lt;p&gt;I had a play around with a dummy script and figured out that it doesn't like the two modules used in the example above together - it will always quit. But if I remove the Bio::Tools::Run::StandAloneBlastPlus module, the TCoffe one can now function as it should do.&lt;/p&gt;
&lt;p&gt;Rooting deeper, both these modules use another module, called CommandExts.pm, so I am guessing that there is some internal shenanigans going on such that both cannot use this same module within the same script.&lt;/p&gt;
&lt;p&gt;Is this assessment right? And is there some method of effectively dealing with something like this? Any general advice on this kind of issue would also be massively appreciated as well - I am still a Perl-baby, really (obviously). I tried some things with Module::Refresh but, as I'm not even sure if my diagnosis is correct, it didn't surprise me that I had no joy (yet) with a fix. Apologies if it's something really obvious/stupid.&lt;/p&gt;
&lt;p&gt;Many thanks for any replies,&lt;/p&gt;</field>
</data>
</node>
