[Bioperl-l] bioperl: cannot run emboss programs using bioperlonwindows
Rohit Ghai
Rohit.Ghai at mikrobio.med.uni-giessen.de
Thu Nov 1 18:41:41 UTC 2007
Hi Jason
I tried this as well. This also gives the same error message.
-Rohit
Jason Stajich wrote:
> You could try this - can't test it though so not sure.
> my $fuzznuc = $f->program('fuzznuc');
> $fuzznuc->executable('C:\EMBOSSwin\fuzznuc');
>
> -jason
> On Nov 1, 2007, at 2:06 PM, Rohit Ghai wrote:
>
>>
>>
>> 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>
>>>> <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
>> <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