当前位置: 首页 > 工具软件 > Augustus > 使用案例 >

augustus 软件安装与Docker使用记录

汝宏伯
2023-12-01

augustus 软件安装与Docker使用记录

augustus:一基因预测软件;
Docker:应用容器引擎,可实现虚拟机。

一. 问题:Github下载的augustus难以正常安装及使用

本机系统:CentOS7

git clone https://github.com/Gaius-Augustus/Augustus.git
cd Augustus
make augustus

## 报错如下:
mkdir -p bin
cd src && make
make[1]: Entering directory `/home/yl/software/Augustus/src'
g++ -DZIPINPUT -DCOMPGENEPRED -DTESTING -DM_MYSQL -DM_SQLITE -Wall -Wno-sign-compare -pedantic -O3 -std=c++11  -I../include -I/usr/include/lpsolve    -I/usr/include/mysql     -c -o randseqaccess.o randseqaccess.cc
In file included from randseqaccess.cc:10:0:
../include/randseqaccess.hh:21:29: fatal error: mysql++/mysql++.h: No such file or directory
#include <mysql++/mysql++.h>
                            ^
compilation terminated.
make[1]: *** [randseqaccess.o] Error 1
make[1]: Leaving directory `/home/yl/software/Augustus/src'
make: *** [augustus] Error 2

直接下载的二进制文件和conda安装都无法正常使用。

~/software/augustus-3.4.0/bin
$ ~/software/augustus-3.4.0/bin/augustus 
augustus: error while loading shared libraries: libboost_iostreams.so.1.71.0: cannot open shared object file: No such file or directory

参考问答页面:https://github.com/Gaius-Augustus/Augustus/issues/156.
该问题可能是Centos的gcc版本及 Application Binary Interface (ABI) 引起。

二. 解决方法:Docker安装

1. 安装Docker

需要root

yum upgrade
yum install docker
[root@localhost software]# docker -v
Docker version 1.13.1, build 7d71120/1.13.1
# 启动
systemctl start docker
# 安装Augustus
git clone https://github.com/Gaius-Augustus/Augustus.git
cd Augustus
docker build -t augustus .

并不顺利~

2. 问题2:E:Failed to fetch … Hash Sum mismatch

出现该问题的原因有很多,更新及换源可能解决
直接改Dockerfile

# Install required packages
RUN apt-get clean
RUN apt-get -y update

此两行改成以下样式,使用清华镜像:

# Install required packages
RUN sed -i s:/archive.ubuntu.com:/mirrors.tuna.tsinghua.edu.cn/ubuntu:g /etc/apt/sources.list
RUN apt-get clean
RUN apt-get -y update --fix-missing

再次执行docker build -t augustus . 等待片刻即可。

3. 使用docker中的软件:

非root用户需要创建docker用户组,添加非root用户进docker组,重启docker即可。

[yl@localhost ~]$ docker images
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
augustus                latest              8a9548d0bcfc        About an hour ago   2.53 GB
...
[yl@localhost ~]$ docker run -i augustus augustus --version # -i传入参数
AUGUSTUS (3.4.0) is a gene prediction tool.
Sources and documentation at https://github.com/Gaius-Augustus/Augustus

可正常使用。

参考:

https://blog.csdn.net/ctwy291314/article/details/104967075.
https://github.com/Gaius-Augustus/Augustus/issues/156

 类似资料: