[Bioperl-l] Blast return codes

Keith James kdj at sanger.ac.uk
Wed Dec 10 16:21:49 EST 2003


>>>>> "Matthew" == Matthew Laird <lairdm at sfu.ca> writes:

    Matthew> Thanks for the replay, the error is as follows: Fatal
    Matthew> error: ------------- EXCEPTION ------------- MSG:
    Matthew> blastall call crashed: -1 /usr/local/blast/blastall -p
    Matthew> blastp -d
    Matthew> /usr/local/psort/conf/analysis/sclblast/sclblast -i
    Matthew> /tmp/rvtNYtglud -e 1e-09 -o /tmp/jFVFD1Pxt3

I think the previous reply could have hit the answer i.e. the -1 means
that blast is not getting run at all (perldoc system seems to confirm
this).

The code in StandAloneBlast is 

 my $status = system($commandstring);

 $self->throw("$executable call crashed: $? $commandstring\n")
   unless ($status==0) ;

Perl seems to set $? to a value (-1 again) even though the child
process never starts. It may be worth including $! in the error
message if the system call fails as this may be helpful.

e.g.

perl -e '$a = system("flub"); $a and print "$a : $?, $!\n"

-1 : -1, No such file or directory

Unfortunately I can't shed any light on the crux of your problem...

Keith

-- 

- Keith James <kdj at sanger.ac.uk> Microarray Facility, Team 65 -
- The Wellcome Trust Sanger Institute, Hinxton, Cambridge, UK -


More information about the Bioperl-l mailing list