[Bioperl-l] bioperl: cannot run emboss programs using bioperlon windows
Rohit Ghai
Rohit.Ghai at mikrobio.med.uni-giessen.de
Thu Nov 1 18:06:48 UTC 2007
Thanks for all the suggestions... but I unfortunately still cannot run
emboss. I am running the latest version of embosswin (2.10.0-Win-0.8),
and the
path is set correctly. I printed $ENV{$PATH} and this contains
C:\EMBOSSwin which is the correct location.
I also tried setting the path directly but I'm not sure how to do this,
so I tried this...
my $fuzznuc = $f->program('C:\\EMBOSSwin\\fuzznuc');
this also did not work.
Also tried printing...
$fuzznuc->executable()
gave the following error again
-------------------- WARNING ---------------------
MSG: Application [C:\EMBOSSwin\fuzznuc] is not available!
---------------------------------------------------
Any more ideas ?
thanks !
Rohit
here's the code...
use strict;
use Bio::Factory::EMBOSS;
use Data::Dumper;
#
# print "PATH=$ENV{PATH}\n";
# path contains C:\EMBOSSwin which is the correct location
# embossversion is 2.10.0-Win-0.8
my $f = Bio::Factory::EMBOSS->new();
# get an EMBOSS application object from the factory
print Dumper ($f);
my $fuzznuc = $f->program('C:\\EMBOSSwin\\fuzznuc'); #tried fuzznuc.exe
as well,
print Dump ($fuzznuc);
#dump of fuzznuc
#$VAR1 = bless( {
# '_programgroup' => {},
# '_programs' => {},
# '_groups' => {}
# }, 'Bio::Factory::EMBOSS' );
#print "executing -- >", $fuzznuc->executable, "\n" ; # doesn't work
my $infile = "temp.fasta";
my $motif = "ATGTCGATC";
my $outfile = "test.out";
$fuzznuc->run(
{ -sequence => $infile,
-pattern => $motif,
-outfile => $outfile
});
Here's the error again....
#-------------------- WARNING ---------------------
#MSG: Application [C:\EMBOSSwin\fuzznuc] is not available!
#---------------------------------------------------
Jason Stajich wrote:
> Presumably the PATH is not getting set properly - you should play
> around printing the $ENV{PATH} variable in a perl script to see if
> actually contains the directory where the emboss programs are
> installed. Bioperl can only guess so much as to where to find an
> application. It is also possible that we aren't creating the proper
> path to the executable - you can print the executable path with
> print $fuzznuc->executable
> I believe unless it is throwing an error at the program() line.
>
> It looks like the code in the Factory object is a little fragile
> assuming that the programs HAVE to be in your $PATH. I don't know if
> windows+perl is special in any way that it run things so I can't
> really tell if there is specific things you have to do here. You may
> have to run this through cygwin in case PATH and such are just not
> available properly to windowsPerl.
>
> -jason
> On Nov 1, 2007, at 5:45 AM, Rohit Ghai wrote:
>
>> Dear all,
>>
>> I have emboss installed on a windows machine. (Embosswin). I can run
>> this from the dos command line and the path is present. However, when I
>> try to call
>> an emboss application from bioperl I get a "Application not found error"
>>
>>
>> my $f = Bio::Factory::EMBOSS->new();
>> # get an EMBOSS application object from the factory
>> my $fuzznuc = $f->program('fuzznuc');
>> $fuzznuc->run(
>> { -sequence => $infile,
>> -pattern => $motif,
>> -outfile => $outfile
>> });
>> gives the following error
>>
>> -------------------- WARNING ---------------------
>> MSG: Application [fuzznuc] is not available!
>> ---------------------------------------------------
>> Can't call method "run" on an undefined value at searchPatterns.pl line
>> 102.
>>
>> Can somebody help me fix this ?
>>
>> best regards
>> Rohit
>>
>> --
>>
>> Dr. Rohit Ghai
>> Institute of Medical Microbiology
>> Faculty of Medicine
>> Justus-Liebig University
>> Frankfurter Strasse 107
>> 35392 - Giessen
>> GERMANY
>>
>> Tel : 0049 (0)641-9946413
>> Fax : 0049 (0)641-9946409
>> Email: Rohit.Ghai at mikrobio.med.uni-giessen.de
>> <mailto:Rohit.Ghai at mikrobio.med.uni-giessen.de>
>>
>> _______________________________________________
>> Bioperl-l mailing list
>> Bioperl-l at lists.open-bio.org <mailto:Bioperl-l at lists.open-bio.org>
>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>
> --
> Jason Stajich
> jason at bioperl.org <mailto:jason at bioperl.org>
>
--
Dr. Rohit Ghai
Institute of Medical Microbiology
Faculty of Medicine
Justus-Liebig University
Frankfurter Strasse 107
35392 - Giessen
GERMANY
Tel : 0049 (0)641-9946413
Fax : 0049 (0)641-9946409
Email: Rohit.Ghai at mikrobio.med.uni-giessen.de
More information about the Bioperl-l
mailing list