HiC软件安装篇之Lachesis

Lachesis是希腊神话众神之一,负责决定生命之线的长度。但是咱们这个lachesis是2013年发表在nature biotechnology上(https://doi.org/10.1038/nbt.2727 )由shendurelab开发的用于辅组基因组组装的软件。

github地址:

https://github.com/shendurelab/LACHESIS

http://shendurelab.github.io/LACHESIS/

软件下载:软件提供zip和tar.gz两种格式,任选其一即可。

#这个是zip文件
wget https://github.com/shendurelab/LACHESIS/zipball/master
unzip master

#这个是tar.gz文件
wget https://github.com/shendurelab/LACHESIS/tarball/master
tar -zxvf master

Lachesis有两个依赖:samtools(低于0.1.19的版本)和C++的boost库(需要大于1.52.0但是又不能太高比如1.67.0就不行)

所以安装软件真的是体力活。。

安装boost

在这个地址https://www.boost.org/users/history/找一个老一点的版本(比如我用的boost_1_53_0,但是不能低于1.52.0,否则也会报错。)解压好之后

tar -zxvf boost_1_53_0.tar.gz
./bootstrap.sh --with-libraries=all --with-toolset=gcc
./b2 toolset=gcc
sudo ./b2 install # 或者sudo ./b2 install --prefix=/usr
sudo ./bjam install

这个过程可能会比较长,中间可能会有几个warning,不用担心,不影响的。

tips: 如果没有权限的话后两步都需要用--prefix=参数指定到自己的目录下的boost的位置进行安装。

安装samtools

在sourceforge(https://sourceforge.net/projects/samtools/files/samtools/)下载低于0.1.19的samtools版本。需要先安装一个依赖再运行Makefile:

sudo apt-get install libncurses5-dev
./Makefile

安装lachesis

添加两个环境变量:

export LACHESIS_BOOST_DIR=/path/to/boost_1_53_0/
export LACHESIS_SAMTOOLS_DIR=/path/to/samtools-0.1.18/ 

正式开始安装。

cd lachesis
./configure --with-samtools=/path/to/samtools-0.1.18 --with-boost=/path/to/boost_1_53_0/

这一步如果没报错的话就可以开始make的,但是在make之前需要把修改shendurelab-LACHESIS-2e27abb/src/include/gtools下面SAMStepper.hSAMStepper.cc这两个文件的#include <bam/sam.h>这一行给改成"/path/to/samtools-0.1.18/sam.h" 不进行这一步的话是会报错的

接下来运行make。我碰到了一个错:找不到libboost_system.so.1.53.0 解决办法见下图

HiC软件安装篇之Lachesis
img

据小伙伴说前面用./b2 install --prefix=/usr就不需要这一步。各位朋友可以自己试试。

至此如果出现下图就说明软件安装成功了

HiC软件安装篇之Lachesis
缺少test_case.ini

只要配置好test_case.ini文件就能正常使用了。


接下来做个报错集锦。包含这个软件安装过程中可能会出现的各种报错:

报错集锦

1、configure: error: cannot run /bin/sh ./config.sub

HiC软件安装篇之Lachesis
报错1

configure: error: cannot run /bin/sh ./config.sub根据lachesis的一篇issue(https://github.com/shendurelab/LACHESIS/issues/31)运行

autoreconf --install

就可以解决。

2、samtools报错

HiC软件安装篇之Lachesis
samtools报错

不管是输./configure --with-samtools=/home/hanschen/miniconda3/bin/

还是./configure --with-samtools=/home/hanschen/miniconda3/bin/samtools

还是./configure --with-samtools=no

或者./configure --without-samtools

都是报错,虽然报的错不太一样。

这个是因为samtools的版本过高引起的。安装0.1.19级以下版本的samtools就好了。在安装samtools的时候可能会有一个报错,需要安装上诉的一个库sudo apt-get install libncurses5-dev

3、boost库报错

HiC软件安装篇之Lachesis
报错3

这个错误是由于boost版本过高或者过低引起的(1.63.0会报错,经小伙伴测试1.51.0也会报错),按照上述教程安装boost的1.52.0或者1.53.0版本就可以解决

4、boost的cannot find flags错误

这个报错的截图找不到了,大致的问题是boost库没完全安装好,只要按照上述教程运行./bjam install就可以避免这个错误。

5、lachesis在make时报"unrecognized command line option “-std=c++11"的错

HiC软件安装篇之Lachesis
报错5

感谢来自小伙伴的报错反馈。在网上查询后根据https://blog.csdn.net/liu1055087125/article/details/72888154得知该错误是由于g++ gcc版本不够高导致的。需要安装高版本的gcc g++库。


致谢

欢迎其他尝试安装这个软件的小伙伴们给我们反馈别的错误~

特别感谢@胡加祥 同学的大力支持。安装这个软件花了两天碰了各种壁,希望以后的小伙伴不要再重蹈我们的覆辙,这样我们的各种尝试和努力也就有了意义。感谢菲沙,感谢生信技能树,感谢jimmy师兄,感谢有你们。

2018年8月10日 update:感谢@南农梨中心刘月园 小姐姐的报错反馈~

上一篇:MCScanX使用小记


下一篇:TB6612FNG电机驱动模块的简单使用