, , ,

It has always been a tricky experience for me to install individual PacBio’s SMRTanalysis tools on isolated machines that do not have the SMRTanalysis package pre-installed. Below is a summary of my recent custom installation of the GenomicConsensus (Quiver) tool, which is used for “polishing” (error-correction) PacBio assemblies.

First of all, I installed Conda to set up an independent python environment that is isolated from the python environment pre-configured for the server. To keep compatible with the SMRTanalysis tools,  I chose python2.7.9 for my conda python environment.

conda install python=2.7.9

Then log out and re-log in.

Install required Python libraries NumPy and h5py, which can be installed via:

conda install numpy=1.12.1 conda install h5py=2.7.0

Now we are ready to install required PacBio libraries

pip install git+https://github.com/PacificBiosciences/pbcore
git clone https://github.com/PacificBiosciences/ConsensusCore
cd ConsensusCore
python setup.py install --swig=$SWIG --boost=$BOOST

Here you should replace $SWIG with the path to your swig executable and $BOOST with the path to your boost installation (the top level directory). (Note that if SWIG is in your $PATH and boost is in /usr/local or /usr/include/, you do not need to specify these flags on the command line. setup.py will find them automatically).

Now, we can install GenomicConsensus (Quiver). Given the significant revision made for GenomicConsensus recently, here I install an older version (v1.1.0) to make sure the installation can succeed. ( I also tried the most recent version but it didn’t work.)

git clone https://github.com/PacificBiosciences/GenomicConsensus.git
cd GenomicConsensus
git reset --hard 654d0276d4a03f269cd1a14ddd7dfd0f54bede45
python setup.py install

Now, GenomicConsensus (Quiver) should have been successfully installed. Let’s test!

quiver -h

usage: variantCaller.py --referenceFilename REFERENCEFILENAME -o
                        OUTPUTFILENAMES [-j NUMWORKERS]
                        [--minConfidence MINCONFIDENCE]
                        [--minCoverage MINCOVERAGE]
                        [--noEvidenceConsensusCall {nocall,reference,lowercasereference}]
                        [--coverage COVERAGE] [--minMapQV MINMAPQV]
                        [--referenceWindow REFERENCEWINDOWSASSTRING]
                        [--referenceWindowsFile REFERENCEWINDOWSASSTRING]
                        [--barcode _BARCODE] [--readStratum READSTRATUM]
                        [--algorithm ALGORITHM]
                        [--parametersFile PARAMETERSFILE]