Changeset 244
- Timestamp:
- 08/21/09 16:52:11 (3 months ago)
- Files:
-
- INSTALL (modified) (1 diff)
- MPI/mpi_evaluator (modified) (1 diff)
- MPI/mpi_maker (modified) (1 diff)
- README (modified) (3 diffs)
- bin/maker (modified) (1 diff)
- lib/GI.pm (modified) (4 diffs)
- lib/PhatHit_utils.pm (modified) (1 diff)
- lib/Widget/fgenesh.pm (modified) (3 diffs)
- lib/Widget/genemark/gmhmm_wrap (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
INSTALL
r238 r244 154 154 155 155 a. See installation documentation. 156 157 4. GeneMarkS. Used for prokaryotic genomes only. 158 Download from http://exon.biology.gatech.edu 159 160 a. See installation documentation. MPI/mpi_evaluator
r198 r244 71 71 use FileHandle; 72 72 use File::Path; 73 use Getopt::Long ;73 use Getopt::Long qw(:config no_ignore_case); 74 74 use File::Temp qw(tempfile tempdir); 75 75 use Bio::DB::Fasta; MPI/mpi_maker
r236 r244 69 69 use FileHandle; 70 70 use File::Path; 71 use Getopt::Long ;71 use Getopt::Long qw(:config no_ignore_case); 72 72 use File::Temp qw(tempfile tempdir); 73 73 use Bio::DB::Fasta; README
r227 r244 11 11 many steps and programs to produce final annotations. For this 12 12 reason, you must first install a number of programs that MAKER depends 13 on. 13 on. MAKER works on both eukaryotic and prokaryotic genomes. 14 14 15 15 … … 36 36 *GeneMark-ES (exon.biology.gatech.edu) 37 37 *FGENESH 2.6 or higher (www.softberry.com) - requires licence 38 *GeneMarkS for prokaryotic genomes (exon.biology.gatech.edu) 38 39 39 40 To install mpi_maker, you must have an mpi package installed, try the … … 122 123 1. Install standard MAKER and verify that it runs. 123 124 2. Install MPICH2 with the --enable-sharedlibs flag set to the 124 appropriate value (See MPICH2 documentation)125 appropriate value for your OS (See MPICH2 documentation) 125 126 3. Use cd to change to the MPI subdirectory in the MAKER 126 127 instalation folder (i.e. maker/MPI/) bin/maker
r236 r244 56 56 use FileHandle; 57 57 use File::Path; 58 use Getopt::Long ;58 use Getopt::Long qw(:config no_ignore_case); 59 59 use File::Temp qw(tempfile tempdir); 60 60 use Bio::DB::Fasta; lib/GI.pm
r242 r244 785 785 786 786 #genemark sometimes fails if called directly so I built a wrapper 787 my $ exe= "$FindBin::Bin/../lib/Widget/genemark/gmhmm_wrap";788 my $ gm= $CTL_OPT->{organism_type} eq 'eukaryotic' ? $CTL_OPT->{gmhmme3} : $CTL_OPT->{gmhmmp}; #genemark787 my $wrap = "$FindBin::Bin/../lib/Widget/genemark/gmhmm_wrap"; 788 my $exe = $CTL_OPT->{organism_type} eq 'eukaryotic' ? $CTL_OPT->{gmhmme3} : $CTL_OPT->{gmhmmp}; #genemark 789 789 my $pro = $CTL_OPT->{probuild}; #helper exe 790 790 my $hmm = $CTL_OPT->{gmhmm}; … … 798 798 799 799 800 my $command = $ exe;800 my $command = $wrap; 801 801 $command .= " -m $hmm"; 802 $command .= " -g $ gm";802 $command .= " -g $exe"; 803 803 $command .= " -p $pro"; 804 804 $command .= " -o $out_file"; 805 $command .= " -t $TMP"; 805 806 $command .= " $in_file"; 806 807 … … 883 884 my $LOG = shift; 884 885 886 my $wrap = "$FindBin::Bin/../lib/Widget/fgenesh/fgenesh_wrap"; #fgenesh wrapper 885 887 my $exe = $CTL_OPT->{fgenesh}; 886 888 my $org = $CTL_OPT->{fgenesh_par_file}; … … 893 895 $LOG->add_entry("STARTED", $out_file, ""); 894 896 895 my $command = $exe; 897 my $command = "$wrap $exe"; 898 $command .= " -tmp $TMP"; 896 899 $command .= " $org"; 897 900 $command .= " $in_file"; lib/PhatHit_utils.pm
r243 r244 255 255 my $hit = shift; 256 256 257 my $ref = ref($hit ->[0]);257 my $ref = ref($hit); 258 258 259 259 my @new_hits; lib/Widget/fgenesh.pm
r222 r244 7 7 use lib '/data1/hao/projects/MAKER-fgenesh/lib'; 8 8 9 use vars qw /@ISA/;9 use vars qw(@ISA $TMP); 10 10 use PostData; 11 11 use FileHandle; … … 280 280 my $command = shift; 281 281 282 283 my $wrap = "$FindBin::Bin/../lib/Widget/fgenesh/fgenesh_wrap"; #fgenesh wrapper 284 282 285 my $file_name = "$the_void/$seq_id\.auto_annotator\.$offset\.fgenesh.fasta"; 283 286 my $o_file = "$the_void/$seq_id\.$offset\.auto_annotator\.fgenesh"; … … 288 291 289 292 FastaFile::writeFile(\$fasta, $file_name); 290 293 $command = $wrap . " $command"; #prepend wrapper 291 294 $command .= " $file_name"; 292 295 $command .= " -tmp $TMP"; 293 296 $command .= ' -exon_table:'.$xdef_file if -e $xdef_file; 294 297 lib/Widget/genemark/gmhmm_wrap
r242 r244 5 5 use lib "$FindBin::Bin/../../"; 6 6 use File::Spec; 7 use File::Temp qw(tempdir );7 use File::Temp qw(tempdir tempfile); 8 8 use Iterator::Fasta; 9 9 use Fasta; … … 26 26 -g <executable> gmhmme3/gmhmmp executable (part of GeneMark). 27 27 -p <executable> probuild executable (part of GeneMark). 28 -t <directory> Temporary directory to use. /tmp is default. 28 29 29 30 -help|? prints this usage statement. … … 37 38 my $probuild; 38 39 my $outfile; 40 my $tmp; 39 41 40 42 #find gmhmme3 … … 60 62 "p=s" => \$probuild, 61 63 "o=s" => \$outfile, 64 "t=s" => \$tmp, 62 65 "help|?" => sub {print $usage; exit(0)} 63 66 ); 67 68 die "ERROR: The temporary directroy \'$tmp\' does not exist\n" if($tmp && ! -d $tmp); 64 69 65 70 #get arguments off the command line … … 69 74 $mod = Cwd::abs_path($mod) if($mod && Cwd::abs_path($mod)); 70 75 $infile = Cwd::abs_path($infile) if($infile && Cwd::abs_path($infile)); 71 $gmhmm = Cwd::abs_path($gmhmm) if($gmhmm && Cwd::abs_path($gmhmm));76 $gmhmm = Cwd::abs_path($gmhmm) if($gmhmm && Cwd::abs_path($gmhmm)); 72 77 $probuild = Cwd::abs_path($probuild) if($probuild && Cwd::abs_path($probuild)); 73 78 $outfile = Cwd::abs_path($outfile) if($outfile && Cwd::abs_path($outfile)); … … 124 129 125 130 #make temp dir to work in 126 my $tempdir = tempdir(CLEANUP => 1); 131 my $tempdir = ($tmp) ? tempdir(CLEANUP => 1, DIR=>$tmp) : tempdir(CLEANUP => 1); 132 my (undef, $tname) = tempfile(DIR => $tempdir); 133 134 #make symbolic links (for some reason long file names mess up on some systems) 135 my $s_mod = "$tname\_mod"; 136 my $s_in = "$tname\_in"; 137 symlink($mod, $s_mod); 138 symlink($infile, $s_in); 127 139 128 140 #split fastas on runs of NNN because Genemark can't handle it 129 141 my $command = "cd $tempdir \n"; 130 $command .= " $probuild --split gm_dna.fa --seq $ infile--MIN_SPLIT_SIZE 100".142 $command .= " $probuild --split gm_dna.fa --seq $s_in --MIN_SPLIT_SIZE 100". 131 143 " --letters_per_line 100 --max_nnn_substring 49 --nnn_margin 3"; 132 144 … … 141 153 foreach my $file (@files){ 142 154 my $out = "$tempdir/".File::Spec->splitpath( $file ) . ".lst"; 143 $command = "$gmhmm -m $ mod -o $out";155 $command = "$gmhmm -m $s_mod -o $out"; 144 156 $command .= " -b /dev/null" if($euk); 145 157 $command .= " $file";
