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

移植Bowtie

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

介绍

简要介绍

Bowtie是一个快速的,较为节省内存的短序列拼接至模板基因组的工具。它在拼接35碱基长度的序列时,可以达到每小时2.5亿次的拼接速度。Bowtie并不是一个简单的拼接工具,它不同于Blast等。它适合的工作是将小序列对比至大基因组上去。它最长能读取1024个碱基的片段。

开发语言:C++

一句话描述:一个快速的,较为节省内存的短序列拼接至模板基因组的工具

开源协议:Artistic License 2.0

建议的版本

建议使用版本为“bowtie 1.2.3”

环境要求

云服务器要求

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

表1 云服务器配置

项目

说明

规格

kc1.large.2 | 4vCPUs | 8GB

磁盘

系统盘:高IO(40GB)

操作系统要求

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

表2 操作系统要求

项目

说明

下载地址

CentOS

7.6

在公共镜像中已提供。

Kernel

4.14.0-115

在公共镜像中已提供。

配置编译环境

安装相关依赖。

yum install gcc gcc-c++ zlib-devel -y

获取源码

获取“bowtie 1.2.3”源码包。

cd /usr/local/src

wget https://github.com/BenLangmead/bowtie/archive/v1.2.3.zip

编译和安装

  1. 解压并进入源码目录。

    unzip v1.2.3.zip

    cd bowtie-1.2.3

  2. 修改Makefile文件。

    vim Makefile

    修改前

    BITS=32
    ifeq (x86_64,$(shell uname -m))
    	BITS=64
    endif
    # msys will always be 32 bit so look at the cpu arch instead.
    ifneq (,$(findstring AMD64,$(PROCESSOR_ARCHITEW6432)))
    	ifeq (1,$(MINGW))
    		BITS=64
    	endif
    endif
    
    ifeq (1,$(LINUX))
        ifeq (x86_64, $(shell uname -p))
            BITS=64
        endif
    endif
    
    ifeq (32,$(BITS))
        $(error bowtie2 compilation requires a 64-bit platform )
    endif
    
    DEBUG_FLAGS = -O0 -g3 -m64
    RELEASE_FLAGS = -O3 -m64
    NOASSERT_FLAGS = -DNDEBUG
    FILE_FLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE

    修改后(加粗为新增加内容,其余的内容不变)。

    BITS=32
    ifeq (x86_64,$(shell uname -m))
    	BITS=64
    endif
    ifeq (aarch64,$(shell uname -m))
    	BITS=64
    endif
    # msys will always be 32 bit so look at the cpu arch instead.
    ifneq (,$(findstring AMD64,$(PROCESSOR_ARCHITEW6432)))
    	ifeq (1,$(MINGW))
    		BITS=64
    	endif
    endif
    
    ifeq (1,$(LINUX))
        ifeq (x86_64, $(shell uname -p))
            BITS=64
        endif
    endif
    
    ifeq (32,$(BITS))
        $(error bowtie2 compilation requires a 64-bit platform )
    endif
    
    #DEBUG_FLAGS = -O0 -g3 -m64
    #RELEASE_FLAGS = -O3 -m64
    #NOASSERT_FLAGS = -DNDEBUG
    #FILE_FLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE
    M64_FLAG := -m64
    ifeq (aarch64,$(shell uname -m))
    	M64_FLAG :=
    endif

  3. 添加环境变量。

    export NO_TBB=1

    export POPCNT_CAPABILITY=0

  4. 编译Bowtie。

    make -j4

  5. 添加环境变量。

    vim /etc/profile

    将如下内容写入文件最后一行。

    export PATH=/usr/local/src/bowtie-1.2.3:$PATH

    保存并退出,然后执行如下命令是环境变量生效。

    source /etc/profile

运行和验证

查看Bowtie版本信息。

bowtie --version

回显类似如下信息表示Bowtie安装成功。

/usr/local/src/bowtie-1.2.3/bowtie-align-s version 1.2.3
64-bit
...
分享:

    相关文档

    相关产品

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

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

*必选

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

字符长度不能超过200

提交反馈 取消

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

智能客服提问云社区提问