Проблема установки и выполнения BioPerl

Проблема установки и выполнения BioPerl

Я установил Active Perl в Windows XP. Через Perl Package Manager я установил репозитории BioPerl. Но при попытке выполнить эту программу BioPerl:

#!/usr/bin/env perl
use Bio::Seq;
use Bio::SeqIO;

# create a sequence object of some DNA
my $seq = Bio::Seq->new(-id => 'testseq', -seq => 'CATGTAGATAG');

# print out some details about it
print "seq is ", $seq->length, " bases long\n";
print "revcom seq is ", $seq->revcom->seq, "\n";

# write it to a file in Fasta format 
my $out = Bio::SeqIO->new(-file => '>testseq.fsa', -format => 'Fasta');
$out->write_seq($seq);

Происходит следующая ошибка

Невозможно найти Bio/Seq.pm в @INC в C:\Perl\bin\Sequence.pl строка 1. Ошибка BEGIN — компиляция прервана в C:\Perl\bin\Sequence.pl строка 1.

В чем тут проблема? Как определить, установлен BioPerl или нет?

решение1

Чтобы узнать, какие модули у вас установлены, откройте терминал и введите:

ppm query

Это инструмент, который поставляется с Active Perl (см.Часто задаваемые вопросы о CPAN).

Также имейте в виду, что "притон" ( #!/usr/bin/env perl), который вы используете, не будет работать в системе Windows. Не могу сказать наверняка, так как никогда не использовал Windows для кодирования, но это свойственно миру UNIX, если только Active Perl активно (извините) не преобразует его в то, с чем может работать Windows.

Итак, либо bioperl не установлен, либо ваш Perl настроен неправильно. Perl будет искать модули и т. п. в каталогах, определенных переменной @INC. Простой способ проверить, есть ли нужный каталог в списке, — запустить этот небольшой однострочный код:

perl -e "do{print \"$_\n\"}for(@INC)"

Он выведет все каталоги, в которых Perl будет искать свои модули.

P.S. Возможно, сейчас самое время проверить Linux...

Связанный контент