鲲鹏云服务器移植bowtie
【摘要】 Bowtie是一个快速的,较为节省内存的短序列拼接至模板基因组的工具。它在拼接35碱基长度的序列时,可以达到每小时2.5亿次的拼接速度。
Bowtie是一个快速的,较为节省内存的短序列拼接至模板基因组的工具。它在拼接35碱基长度的序列时,可以达到每小时2.5亿次的拼接速度。Bowtie并不是一个简单的拼接工具,它不同于Blast等。它适合的工作是将小序列对比至大基因组上去。它最长能读取1024个碱基的片段。
建议的版本
建议使用版本为“bowtie 1.2.3”。
环境要求
云服务器要求
本文以云服务器KC1实例测试,云服务器配置如表 云服务器配置所示。
项目 |
说明 |
规格 |
kc1.large.2 | 4vCPUs | 8GB |
磁盘 |
系统盘:高IO(40GB) |
操作系统要求
操作系统要求如表 操作系统要求所示。
项目 |
说明 |
下载地址 |
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
编译和安装
解压并进入源码目录。
unzip v1.2.3.zip
cd bowtie-1.2.3
修改Makefile文件。
vim Makefile
修改后(加粗为新增加内容,其余的内容不变)。
BITS=32ifeq (x86_64,$(shell uname -m))BITS=64endififeq (aarch64,$(shell uname -m)) BITS=64endif# msys will always be 32 bit so look at the cpu arch instead.ifneq (,$(findstring AMD64,$(PROCESSOR_ARCHITEW6432)))ifeq (1,$(MINGW))BITS=64endifendif ifeq (1,$(LINUX))ifeq (x86_64, $(shell uname -p))BITS=64endifendif 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_SOURCEM64_FLAG := -m64ifeq (aarch64,$(shell uname -m)) M64_FLAG :=endif
添加环境变量。
export NO_TBB=1
export POPCNT_CAPABILITY=0
编译Bowtie。
make -j4
添加环境变量。
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.364-bit...
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)