[Bioperl-l] standalone blast won't work

Carlo Lapid aximili23 at gmail.com
Mon Sep 4 09:42:21 UTC 2006


Hi,

I installed blast on my machine, and I wrote a test bioperl script that
blasts a short test sequence against a small local database that I created.
It worked fine. But when I incorporated the same code in a CGI script for a
web-based program, I get the following error message in the error logs:

------------- EXCEPTION  -------------, referer:
http://localhost/asa/cgi-bin/asa.cgi
MSG: blastall call crashed: -1 /usr/local/blast-2.2.14/bin/blastall -p
blastp  -d  /usr/local/blast-2.2.14/data/ig_heavy.gp  -i  /tmp/Cht6r7QkNs
-o  /tmp/CzYdy6GJ1b , referer: http://localhost/asa/cgi-bin/asa.cgi
, referer: http://localhost/asa/cgi-bin/asa.cgi
STACK Bio::Tools::Run::StandAloneBlast::_runblast
/usr/lib/perl5/site_perl/5.8.8/Bio/Tools/Run/StandAloneBlast.pm:732,
referer: http://localhost/asa/cgi-bin/asa.cgi
STACK Bio::Tools::Run::StandAloneBlast::_generic_local_blast
/usr/lib/perl5/site_perl/5.8.8/Bio/Tools/Run/StandAloneBlast.pm:680,
referer: http://localhost/asa/cgi-bin/asa.cgi
STACK Bio::Tools::Run::StandAloneBlast::blastall
/usr/lib/perl5/site_perl/5.8.8/Bio/Tools/Run/StandAloneBlast.pm:536,
referer: http://localhost/asa/cgi-bin/asa.cgi


Can anybody help? I've already placed the blast/bin folder with the
executable files in the PATH environment variable, and I've pointed BLASTDB
and BLASTMAT to the blast/data directory as well.

The relevant program code is below:

use CGI;
use Bio::Tools::Run::StandAloneBlast;

{
$ENV{PATH}=":/usr/local/blast-2.2.14/bin/:";
}

my $sequence = Bio::Seq->new(-id => "test_query", -seq => $input_sequence);
my @params = (program => 'blastp', database => '/usr/local/blast-2.2.14
/data/ig_heavy.gp');
my $factory = Bio::Tools::Run::StandAloneBlast->new(@params);
my $blast_report = $factory->blastall($sequence);
my $result = $blast_report->next_result;

print    $cgi->hr, $cgi->p();
print    $cgi->br;
while( my $hit = $result->next_hit()) {
    print     $cgi->br;
    print "Hit name: ", $hit->name(), space(5), "Significance: ",
$hit->significance();
}

Any help would be immensely appreciated.

Carlo



More information about the Bioperl-l mailing list