簡(jiǎn)介
smartdenovo是一個(gè)同時(shí)適用于pacbio和nanopore測(cè)序數(shù)據(jù)的denovo組裝軟件,它是一款基于C語(yǔ)言開(kāi)發(fā)的開(kāi)源軟件。相較于其他組裝軟件(如:canu、falcon),smartdenovo組裝可從raw reads開(kāi)始,不需要經(jīng)過(guò)error correction糾錯(cuò)過(guò)程。經(jīng)初步組裝后,smartdenovo還提供了工具對(duì)初始組裝的contig進(jìn)行polish,生成consensus,也可以使用其他consensus polish工具來(lái)糾錯(cuò)。
配置流程
1、配置編譯環(huán)境
安裝wget工具。
yum install wget-y
2、獲取源碼
獲取“smartdenovo”源碼包。
cd/usr/local/src git clone https://github.com/ruanjue/smartdenovo.git
3、編譯和安裝
1)進(jìn)入smartdenovo的文件目錄。
cd/usr/local/src/
2)下載文件。
由于在X86上指令優(yōu)化用的是SSE,在鯤鵬下使用是neon,因此下載“sse2neon.h”,使用此頭文件替換sse。
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./smartdenovo/
3)修改smartdenovo編譯參數(shù)。
Makefile中通過(guò)編譯選項(xiàng)配置支持SSE3,但是ARM版本的gcc無(wú)法識(shí)別X86平臺(tái)的編譯選項(xiàng),因此需要?jiǎng)h除Makefile中的-mpopcnt-mssse3這部分編譯選項(xiàng),并同時(shí)在CFLAGS增加-march=armv8-a,GENERIC_SRC中增加“sse2neon.h”,并下載“sse2neon.h”放入目錄中。
cd/usr/local/src/smartdenovo/ vi Makefile
更改為如下所示:“CFLAGS”增加“-march=armv8-a”,“GENERIC_SRC”增加“sse2neon.h”,如圖1-1編譯和安裝所示。更改完成后,保存退出。
圖1-1修改Makefile

4)修改“ksw.c”程序中替換引用的頭文件。
vi/usr/local/src/smartdenovo/ksw.c
如圖5-2所示,注釋掉“#include<emmintrin.h>”,增加“#include"sse2neon.h"”,修改完成后,保存退出。
圖1-2修改“ksw.c”

5)編譯smartdenovo。
cd/usr/local/src/smartdenovo make&&make install
4、運(yùn)行和驗(yàn)證
查看編譯smartdenovo所生成的可執(zhí)行文件。
ll/usr/local/bin/|grep wt
回顯內(nèi)容如下,表示測(cè)試結(jié)果正常。
[root ecs-smartdenovo-x bin]#ll/usr/local/bin/|grep wt -rwxr-xr-x 1 root root 75464 Aug 26 17:02 wtclp -rwxr-xr-x 1 root root 143168 Aug 26 17:02 wtcns -rwxr-xr-x 1 root root 75264 Aug 26 17:02 wtcyc -rwxr-xr-x 1 root root 76288 Aug 26 17:02 wtext -rwxr-xr-x 1 root root 144696 Aug 26 17:02 wtgbo -rwxr-xr-x 1 root root 146664 Aug 26 17:02 wtlay -rwxr-xr-x 1 root root 74128 Aug 26 17:02 wtmer -rwxr-xr-x 1 root root 143112 Aug 26 17:02 wtmsa -rwxr-xr-x 1 root root 75536 Aug 26 17:02 wtobt -rwxr-xr-x 1 root root 73976 Aug 26 17:02 wtpre -rwxr-xr-x 1 root root 210128 Aug 26 17:02 wtzmo