由于要做无参转录组分析,所以就要使用trinity来做reads的拼接。
但是自己安装trinity时遇见了一堆问题,最终一一解决,解决方案分享在下面。
最开始我去github看Trinity的wiki,它给出直接编译的方案来安装trinity,但是很不幸,我使用cmake的时候,系统报错缺cmake,而且我没有root权限装很麻烦,所以我就换了一个方法,用conda装。
conda install trinity
我用conda装好之后,以为就可以好好使用了,但是。。。调用的时候出现了挺多的错误
出现的第一个错误 samtools: error while loading shared libraries: libtinfow.so.5
这个错误明显是samtools的问题,于是我看了一下现在用的samtools的版本是1.9 ,其中还有一个错误提示是让我用samtools的1.3 version,于是,我用conda把samtools版本降到了1.3
conda install samtools=1.3
降了版本之后再调用trinity 就没出现samtools的报错问题了
虽然这个问题解决了,但是当我重新调用trinity的时候,又出现了下面这个问题
出现的第二个错误 ERROR: couldn’t run the network check to confirm latest Trinity software ver
我的解决方法是,在命令中加入一个 --no_version_check
就像这样:
/home/miniconda3/bin/Trinity --seqType fq --no_salmon --max_memory 150G --no_version_check \
--left f5_R1.fq.gz \
--right f5_R2.fq.gz \
--CPU 12 \
--output /home/zhaoll/zhangbin/chuli_data/trinity_out_dir
于是这个错误成功解决了。
但是很不幸,我继续运行trinity 又出现了这个错误:
出现的第三个错误 Error, cannot locate file: at miniconda3/bin/Trinity
为什么无法定位呢??
查了一下资料,biostar上的这位仁兄给出的解决方案是用conda创建一个环境,在新建的环境里面安装trinity
(https://www.biostars.org/p/340588/)
于是我就这样做:
conda create -n trinity
source activate trinity
conda install -c bioconda trinity
新建环境之后,我重新调用trinity,就正常运行啦
/home/miniconda3/envs/trinity/bin/Trinity --seqType fq --no_salmon --max_memory 150G --no_version_check \
--left f5_R1.fq.gz \
--right f5_R2.fq.gz \
--CPU 12 \
--output /home/zhaoll/zhangbin/chuli_data/trinity_out_dir