鲲鹏云服务器移植SpeedSeq
简要介绍
Speedseq是一个快速基因组分析和注释的灵活框架,发表在Nature Method(http://www.nature.com/nmeth/journal/vaop/ncurrent/full/nmeth.3505.html)上封装了大量基因组分析的软件,比如比对软件BWA,calling SNP软件freebays,SV鉴定软件lumpy等。
开发语言:C
一句话描述:快速基因组分析和解析的框架
开源协议:MIT
建议的版本
根据实际需要选择版本,本文档以“speedseq 最新版”为例进行说明。
环境要求
云服务器要求
本文以云服务器KC1实例测试,云服务器配置如表 云服务器配置所示。
项目 |
说明 |
规格 |
kc1.large.2 | 4vCPUs | 8GB |
磁盘 |
系统盘:高IO(40GB) |
操作系统要求
操作系统要求如表 操作系统要求所示。
项目 |
说明 |
下载地址 |
CentOS |
7.6 |
在公共镜像中已提供。 |
Kernel |
4.14.0-115 |
在公共镜像中已提供。 |
配置编译环境
安装相关依赖
yum install -y gcc gcc-c++ make cmake python2 python2-numpy scipy gawk zlib zlib-devel bzip2-devel xz-devel ncurses-devel
安装HTSlib
安装cython
pip install cython
安装pysam
pip install cython
pip install pysam
获取源码
获取“speedseq最新版”源码包。
cd /usr/local/src
git clone --recursive https://github.com/hall-lab/speedseq.git
编译和安装
进入speedseq目录
cd /usr/local/src/speedseq
下载“sse2neon.h”文件
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 ./src/bwa
修改“ksw.c”程序中引用的头文件,注释掉“#include <emmintrin.h>”,增加“#include "sse2neon.h"”,修改完成后,保存退出。
vim ./src/bwa/ksw.c
4.编译speedseq
make -j4
5.生成的speedseq工具加入环境变量
编辑/etc/profile
vim /etc/profile
在文件末尾加入如下内容:
export PATH="$PATH:/usr/local/src/speedseq/bin"
按Esc,输入wq!退出
环境变量生效
source /etc/profile
运行和验证。
执行如下命令,查看speedseq版本。
speedseq
回显信息如下,则表示speedseq安装成功。
故障排除
问题一:编译报“configure: error: cannot guess build type; you must specify one”等错误
问题描述:
执行make,报“configure: error: cannot guess build type; you must specify one”错误。
问题原因:
通过截图看出,进入src/mbuffer,执行./configure --prefix=/usr/local/src/speedseq步骤时候,不能匹配到机器类型。
解决方法:
通过修改配置“config.sub”后,指定配置类型进行解决。
修改配置文件。
cd /usr/local/src/speedseq
vi ./src/mbuffer/config.sub
查找“x86”内容的位置,在其位置后面增加“aarch64”类型。
在“case $basic_machine in”区域的两个位置修改。
修改下述内容。
| x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
修改后为:
| x86 | aarch64 | xscale | xscalee[bl] | xstormy16 | xtensa \
修改下述内容。
| x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
修改后为:
| x86-* | aarch64-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
修改Makefile
vim Makefile
修改生成mbuffer部分的脚本,在./configure后面加参数--host=aarch64 --build=aarch64,修改后内容如下:
- 点赞
- 收藏
- 关注作者
评论(0)