Downloading and Installing SHORE
Contents
Download
Download the latest SHORE binary or source code release
https://sourceforge.net/projects/shore or http://1001genomes.org/downloads
or check out the git repository to compile SHORE from the very latest source:
> git clone git://shore.git.sourceforge.net/gitroot/shore/shore
Installing SHORE using the binary file
Navigate to the folder where you stored the downloaded file:
> tar xzvf shore_<platform>_<version>.tar.gz
Now, adjust the PATH environment variable to include the extracted shore directory (or copy the shore binary to a location in your PATH).
For example, in a typical bash environment, add a similar line to the file $HOME/.bashrc:
export PATH=$PATH:YOUR/SHORE/DIRECTORY
Installing SHORE using the source files
Please make sure that the following libraries and development headers are installed on your system:
Library | Version | Debian / Ubuntu package name |
---|---|---|
boost filesystem | ≥1.34.1 | libboost-filesystem-dev |
boost iostreams | ≥1.34.1 | libboost-iostreams-dev |
boost thread | ≥1.34.1 | libboost-thread-dev |
GNU Scientific Library | ≥0.11 | libgsl0-dev |
zlib | ≥1.1.3 | zlib1g-dev |
Navigate to the directory where you stored the downloaded file
> tar xzvf shore_source_<version>.tar.gz > cd shore_source_<version>
(or navigate to your shore git folder).
Please avoid installing any of the library sources or other third-party files in the SHORE directory, as these may interfere with SHORE's build system.
To build and install SHORE, simply type
make make install
This will install the SHORE binary into /usr/local/bin, the scoring matrix files into usr/local/share/shore and the documentation files into /usr/local/share/doc/shore.
To install into a different directory, use
make install prefix=<path>
to install SHORE into <path>/bin and <path>/share.
Notes
- By default it is assumed that the boost libraries on your system are named e.g. libboost_filesystem-mt.so. If the -mt suffix is missing on your system, then SHORE must be built using make BOOST_SUFFIX="".
- Note that on some platforms (e.g. BSD) the gmake command must be used instead of make.
Building SHORE for distributed memory setups
SHORE can also be compiled to support distributed memory parallelization through the MPI (Message Passing Interface) standard.
Make sure to have appropriate MPI development files installed, e. g. MPICH2.
First, follow the above instructions for compiling shore from source.
To build and install the MPI-enabled SHORE binary, type
> make WITH_MPI=1 > make install WITH_MPI=1
This will install an additional command shore-mpi, which can be passed to an MPI process manager like mpiexec (see using SHORE with MPI).
Download and install an alignment tool
SHORE can currently be run with five different mapping tools. The native tool of SHORE is GenomeMapper, which can be downloaded from http://1001genomes.org/downloads.
Navigate to the folder where you stored the downloaded file:
> tar xzvf genomemapper.tar.gz > cd genomemapper > make
See the GenomeMapper manual for further details.
Now, copy the genomemapper and gmindex binaries to a location in your PATH, or set the GENOMEMAPPER environment variable as described below.
In addition to GenomeMapper, SHORE supports several third party aligners.
Installation of R
SHORE can optionally make use of R (http://www.r-project.org) to provide visualization, e.g. of run statistics. In order to use this feature, R has to be installed and the installation path has to be added to the $PATH environment variable. Note that it is not necessary to have R installed to run SHORE.
Environment variables
Since SHORE supports external alignment tools, it needs to know where these are located on the respective system. The easiest way to achieve this is making sure the alignment tools are installed in a location that is pointed to by the $PATH environment variable (exemplary description for the bash environment; for tcsh or any other shell, users have to set the environment variables in an equivalent way).
Add one or more similar lines to the file $HOME/.bashrc:
export PATH=$PATH:/ALIGNMENT_TOOL/INSTALL/DIRECTORY
Alternatively, individual environment variables may be set up for each specific alignment tool that should be used:
export GENOMEMAPPER=/GENOMEMAPPER/INSTALL/DIRECTORY
third-party tools:
export BWA=/BWA/INSTALL/DIRECTORY export BOWTIE=/BOWTIE/INSTALL/DIRECTORY export ELAND=/CASAVA/INSTALL/DIRECTORY
TMP directory
Some files need to be sorted before SHORE can use them. Before using these input files SHORE checks if they are sorted in the appropriate way and in case of inconsistencies SHORE will start to sort them. E.g., initially alignments are sorted by read ids, but to analyze them they need to be sorted by the alignment location. Therefore sorting is required. SHORE implements its own sorting program. By default this program uses /tmp if the files to be sorted are large (which is usually the case). Therefore, it can happen that the disk space in /tmp is not sufficient; we recommend at least 200GB. This can be achieved by setting the TMPDIR environment variable to a file system with sufficient space.
export TMPDIR=/DIRECTORY/WITH/SUFFICIENT/SPACE