I followed along with what Sean previously did when installing on Emu, but it appears he didn’t install it in the shared location to make it accessible to all users. So, I’m installing it in the /home/shared/
directory.
First, I need to install legacy blasr from PacBio:
Installed in
<code>cd /home/shared
git clone https://github.com/PacificBiosciences/pitchfork.git
cd pitchfork
git checkout legacy_blasr
make init PREFIX=/home/shared
make blasr PREFIX=/home/shared</code>
Ran into this error:
<code>make[1]: Leaving directory '/home/shared/pitchfork/ports/thirdparty/zlib'
make -C ports/thirdparty/hdf5 do-install
make[1]: Entering directory '/home/shared/pitchfork/ports/thirdparty/hdf5'
/home/shared/pitchfork/bin/pitchfork fetch --url https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8.16/src/hdf5-1.8.16.tar.gz
fetching https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8.16/src/hdf5-1.8.16.tar.gz
tar zxf hdf5-1.8.16.tar.gz -C /home/shared/pitchfork/workspace
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
Makefile:23: recipe for target '/home/shared/pitchfork/workspace/hdf5-1.8.16' failed
make[1]: *** [/home/shared/pitchfork/workspace/hdf5-1.8.16] Error 2
make[1]: Leaving directory '/home/shared/pitchfork/ports/thirdparty/hdf5'
Makefile:211: recipe for target 'hdf5' failed
make: *** [hdf5] Error 2</code>
Luckily, I came across this GitHub Issue that addresses this exact problem.
I found the functional URL and downloaded the hdf5-1.8.16.tar.gz file to pitchfork/ports/thirdparty/hdf5
. Re-ran make blasr PREFIX=/home/shared
and things proceeded without issue. As Sean noted, this part takes a long time.
Load the setup-env.sh (this is located here: /home/shared/pitchfork/setup-env.sh
<code>source setup-env.sh</code>
Blasr install is complete!
Then, install networkx v1.1, per the PB Jelly documentation:
python pip -m install networkx==1.1
On to PB Jelly!
Edited the setup.sh
file and entered in the path to the PB Jelly install on Emu (/home/shared/PBSuite_15.8.24/
):
[code lang=text] #/bin/bash
#If you use a virtual env - source it here #source /hgsc_software/PBSuite/pbsuiteVirtualEnv/bin/activate
#This is the path where you’ve install the suite. export SWEETPATH=/home/shared/PBSuite_15.8.24 #for python modules export PYTHONPATH=\(PYTHONPATH:\)SWEETPATH #for executables export PATH=\(PATH:\)SWEETPATH/bin [/code]
Test it out with the test data:
- Edit the following file to reflect the paths on Emu to find this test data:
/home/shared/PBSuite_15.8.24/docs/jellyExample/Protocol.xml
<code>
<jellyProtocol>
<reference>/home/shared/PBSuite_15.8.24/docs/jellyExample/data/reference/lambda.fasta</reference>
<outputDir>/home/shared/PBSuite_15.8.24/docs/jellyExample/</outputDir>
<blasr>-minMatch 8 -minPctIdentity 70 -bestn 1 -nCandidates 20 -maxScore -500 -nproc 4 -noSplitSubreads</blasr>
<input baseDir="/home/shared/PBSuite_15.8.24/docs/jellyExample/data/reads/">
<job>filtered_subreads.fastq</job>
</input>
</jellyProtocol>
</code>
I went through all the stages of the test data and got through it successfully. Seems ready to roll!