简介
Wtdbg2是一个三代测序数据(同时适用于pacbio和nanopore)denovo组装软件,它是一款基于C语言开发的 开源 软件。相较于其他三代数据组装软件(Canu,smartdenovo,miniasm,FALCON,FALCON-unzip),优点如下:
安装简单(反例FALCON,安装过程非常复杂)
使用简单,可用“run_wtdbg_assembly.sh”脚本生成运行脚本
内存及存储占用少
配置流程
1.配置编译环境
安装wget工具。
yum install wget-y
2.获取源码
获取“wtdbg2”源码包。
cd/usr/local/src git clone https://github.com/ruanjue/wtdbg2
3.编译和安装
1)下载“sse2neon.h”文件。
下载由于在X86上指令优化用的是SSE,在鲲鹏下使用是neon,因此下载“sse2neon.h”,使用此头文件替换sse。
cd/usr/local/src/ wget https://github.com/jratcliff63367/sse2neon/archive/master.zip unzip master.zip mv./sse2neon-master/SSE2NEON.h./sse2neon-master/sse2neon.h cp./sse2neon-master/sse2neon.h./wtdbg2/
2)修改Wtdbg2编译参数。
“Makefile”中通过编译选项配置支持SSE3,但是ARM版本的gcc无法识别X86平台的编译选项,因此需要删除“Makefile”中的“-mpopcnt-mssse3”这部分编译选项,并同时在“CFLAGS”增加“-march=armv8-a”,“GENERIC_SRC”中增加“sse2neon.h”。
cd/usr/local/src/wtdbg2/ vi Makefile
修改如图1所示,修改完成后,保存退出。
修改“Makefile”文件
3)修改“ksw.c”程序中引用的头文件。
vi/usr/local/src/wtdbg2/ksw.c
如图2所示,注释掉“#include<emmintrin.h>”,增加“#include"sse2neon.h"”,修改完成后,保存退出。
注释“ksw.c”的无用代码
4)修改“poacns.h”程序中引用的头文件,并删除无用代码。
vi poacns.h
将“#include<emmintrin.h>”和“#include<tmmintrin.h>”注释掉,并且增加“#include"sse2neon.h"”,如下所示。
//#include<emmintrin.h>; #include"sse2neon.h" //#include<tmmintrin.h>;
将如下所示的代码注释掉,如图3所示,并保存退出。
注释“poacns.h”的无用代码
5)编译wtdbg2。
cd/usr/local/src/wtdbg2 make&&make install ----结束
4.运行和验证
查看wtdbg2的版本信息。
wtdbg2--version
回显内容如下,表示安装成功。
[root ecs-scale-x wtdbg2]#wtdbg2--version wtdbg2 2.5