MAKER is a portable and easily configurable genome annotation pipeline. Its purpose is to allow smaller eukaryotic and prokaryotic genome projects to independently annotate their genomes and to create genome databases.
See versions of maker that are available:
$ module avail maker
Load a particular version into your environment and run it:
$ module load maker/3.01.03 $ maker -h
Note 1: Maker generates literally millions of small files. Please please please make sure you direct your program output to the local /var/scratch
directory on the compute node where your job is running. Your job will run much faster and will not burden the network file system on /home
.
Note 2: Maker uses a lot of temporary storage in /tmp
by default. Please make sure to use something like -TMP /var/scratch
to use a more appropriate location.
Notes from the sysadmin during installation:
$ mkdir -p /var/tmp/chroot/maker $ rpm --rebuilddb --root=/var/tmp/chroot/maker $ wget https://hpc.ilri.cgiar.org/mirror/centos/7/os/x86_64/Packages/centos-release-7-9.2009.0.el7.centos.x86_64.rpm $ sudo rpm --root=/var/tmp/chroot/maker -i centos-release-7-9.2009.0.el7.centos.x86_64.rpm $ sudo yum --installroot=/var/tmp/chroot/maker install -y rpm-build yum gcc wget vim perl perl-App-cpanminus.noarch expat-devel $ sudo cp /etc/resolv.conf /var/tmp/chroot/maker/etc $ sudo mount --bind /dev/ /var/tmp/chroot/maker/dev $ sudo mount -t proc procfs /var/tmp/chroot/maker/proc $ sudo mount -t sysfs sysfs /var/tmp/chroot/maker/sys $ sudo chroot /var/tmp/chroot/maker # mkdir -p /export/apps/maker/3.01.03/deps/lib/perl5 # export PERL5LIB="/export/apps/maker/3.01.03/deps/lib/perl5" # tar xf maker-3.01.03.tgz # cp -r maker/* /export/apps/maker/3.01.03 # cd /export/apps/maker/3.01.03/src # Check Perl dependencies that need satisfying... # perl Build.PL # cpanm -l /export/apps/maker/3.01.03/deps DBD::SQLite # cpanm -l /export/apps/maker/3.01.03/deps forks::shared # cpanm -l /export/apps/maker/3.01.03/deps Bit::Vector # cpanm -l /export/apps/maker/3.01.03/deps IO::All # cpanm -l /export/apps/maker/3.01.03/deps Want # cpanm -l /export/apps/maker/3.01.03/deps Inline::C # cpanm -l /export/apps/maker/3.01.03/deps Env # cpanm -l /export/apps/maker/3.01.03/deps Bio::Root::Version # cpanm -l /export/apps/maker/3.01.03/deps Perl::Unsafe::Signals # exit $ sudo mkdir -p /export/apps/maker/3.01.03 $ sudo chown aorth:aorth /export/apps/maker/3.01.03 $ rsync -av /var/tmp/chroot/maker/export/apps/maker/3.01.03/ /export/apps/maker/3.01.03 $ cd /export/apps/maker/3.01.03/src $ export PERL5LIB="/export/apps/maker/3.01.03/deps/lib/perl5" # Check that all Perl dependencies are satisfied... $ perl Build.PL $ module load repeatmasker/4.1.1 snap/2013-11-29 exonerate/2.2.0 augustus/3.2.3 # change permissions on this table of contents that Maker's build script wants to touch: $ sudo chown -R aorth:aorth /export/apps/perl/5.16.3.1603/html/perltoc.html # install mpich-3.2-devel so we can get mpicc to enable MPI support in Maker $ sudo yum install mpich-3.2-devel.x86_64 $ perl Build.PL $ ./Build install $ sudo chown -R root:root /export/apps/maker/3.01.03 $ sudo umount /var/tmp/chroot/maker/dev /var/tmp/chroot/maker/proc /var/tmp/chroot/maker/sys
Maker requires a handful of Perl modules to be installed, which is very slow on the network file system. I solve this by beginning the installation in a chroot on the local /var/tmp
file system and then copying it over to the network applications directory with rsync once I'm done.