文档首页 > > 移植指南> 移植smartdenovo

移植smartdenovo

分享
更新时间:2020/08/06 GMT+08:00

介绍

简要介绍

smartdenovo是一个同时适用于pacbio和nanopore测序数据的denovo组装软件,它是一款基于C语言开发的开源软件。相较于其他组装软件(如:canu、falcon), smartdenovo组装可从raw reads开始,不需要经过error correction纠错过程。经初步组装后,smartdenovo还提供了工具对初始组装的contig进行polish,生成consensus,也可以使用其他consensus polish工具来纠错。

语言:C/C++

一句话描述:三代基因测序组装软件

建议的版本

建议通过git下载最新版本。

环境要求

云服务器要求

本文以云服务器KC1实例测试,云服务器配置如表1所示。

表1 云服务器配置

项目

说明

规格

kc1.large.2 | 2vCPUs | 4GB

磁盘

系统盘:高IO(40GB)

操作系统要求

操作系统要求如表2所示。

表2 操作系统要求

项目

说明

下载地址

CentOS

7.6

在公共镜像中已提供。

Kernel

4.14.0-115

在公共镜像中已提供。

配置编译环境

安装wget工具。

yum install wget -y

获取源码

获取“smartdenovo”源码包。

cd /usr/local/src

git clone https://github.com/ruanjue/smartdenovo.git

编译和安装

  1. 进入smartdenovo的文件目录。

    cd /usr/local/src/

  2. 下载文件。

    由于在X86上指令优化用的是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编译参数。

    Makefile中通过编译选项配置支持SSE3,但是ARM版本的gcc无法识别X86平台的编译选项,因此需要删除Makefile中的-mpopcnt -mssse3这部分编译选项,并同时在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 修改Makefile

  4. 修改“ksw.c”程序中替换引用的头文件。

    vi /usr/local/src/smartdenovo/ksw.c

    图2所示,注释掉“#include <emmintrin.h>”,增加“ #include "sse2neon.h"”,修改完成后,保存退出。

    图2 修改“ksw.c”

  5. 编译smartdenovo

    cd /usr/local/src/smartdenovo

    make && make install

运行和验证

查看编译smartdenovo所生成的可执行文件。

ll /usr/local/bin/ | grep wt

回显内容如下,表示测试结果正常。

[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
分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问