Search code examples
perlbioperl

Bioperl testing error in Perl


Newbie here, I am trying to use Bioperl module in the perl environment. My configuration are

  • Windows Vista/32
  • Active Perl 5.10.1
  • Bioperl 1.6.1
  • Padre and Per Studio 2010 IDE

For the installation guideline I went through BioPerlWiki and used PPM method. I installed it successfully.

To check whether Bioperl was working I futher followed:

use Bio::Perl;  // Is working without error

But when I tried to do futher checking like

#!C:\Perl\bin
use Bio::Perl;
use strict;
$seq_object = get_sequence('swissprot',"ROA1_HUMAN");
write_sequence(">roa1.fasta",'fasta',$seq_object);

Then I am getting error

Global symbol "$seq_object" requires explicit packages name at c:\.......\example.pl line 4
Global symbol "$seq_object" requires explicit package name at c:\........\example.pl line 5
Execution of C:\...... \example.pl aborted due to compilation erros

I went to the c:\perldoc Bio::Perl and know it's uses, further more I tried to trace out errors through google too but dont know what's wrong.

I am aware of Perl and bioperl to be in system path too. Can anyone point me out what stupid mistakes I have been doing?

Will ask to bioperl mailing list too, but I know their reponse is not so fast like stackoverflow

Thank you


Solution

  • You can use the diagnostics pragma to extend the diagnostics emitted by Perl:

    use diagnostics;
    # your_code
    

    This will provide you a verbose explanation:

    You've said "use strict" or "use strict vars", which indicates
    that all variables must either be lexically scoped (using "my"),
    declared beforehand using "our", or explicitly qualified to say
    which package the global variable is in (using "::").