美文网首页程序员
Linux上安装Tarball软件------以MUMmer为例

Linux上安装Tarball软件------以MUMmer为例

作者: 夏夏LJ | 来源:发表于2019-02-19 18:57 被阅读0次

下文以一个生物信息学小软件MUMmer为例,说明一下tarball软件的安装流程。
根据mummer软件Github上install and readme: INSTALL.md

Dependencies
If compiling from a release source tarball you need a recent version of the GCC compiler (g++ version >= 4.7) and other essential tools for compilation (GNU make, ar, etc. Install build-essentials on Debian or Ubuntu derivatives). Additional requirements are needed to compile the SWIG script bindings. See the SWIG installation guide.

If compiling from the github development tree, additionally you need autotools(autoconf, automake and libtools), yaggo. You should compile from a release source tarball, unless you plan on modifying the code of MUMmer.

软件安装过程

直接使用root权限安装gcc
sudo apt-get install build-essential
然后以为可以使用编译了,于是
./configure --prefix=/path/to/installation
结果提示
bash: ./configure: No such file or directory
原来是因为我是从Git下载,没有configure文件,所以我需要使用autoconf建立configure文件,继续下载
sudo apt-get install autoconf
下载完成后按照正确操作autoreconf -fi 仍然报错

configure.ac:8: error: possibly undefined macro: AC_PROG_LIBTOOL

      If this token and others are legitimate, please use 
m4_pattern_allow.

      See the Autoconf documentation.

autoreconf: /usr/bin/autoconf failed with exit status: 1

这种错误的其中一个原因是目录中没有安装libtool,于是安装libtool 和libsysfs-dev

sudo apt-get install libtool
sudo apt-get install libsysfs-dev

安装完成后进行编译

autoreconf -fi
./configure --prefix=path
make

make时报错

  YAGGO    src/umd/nucmer_cmdline.hpp
Makefile:2791: recipe for target 'src/umd/nucmer_cmdline.hpp' 
failed
make: *** [src/umd/nucmer_cmdline.hpp] Error 1

一开始使用关键“make Error 1”并未发现与我相似的错误,于是我回过头去检查Makefile:2791行,这一行的代码如下:

.yaggo.hpp:
    $(V_YAGGO)$(YAGGO) -o $@ $<

检查变量

YAGGO = false
V_YAGGO = $(V_YAGGO_$(V))
V_YAGGO_ = $(V_YAGGO_$(AM_DEFAULT_VERBOSITY))
V_YAGGO_0 = @echo "  YAGGO   " $@;
YAGGO_BUILT = src/umd/nucmer_cmdline.hpp \
    tests/generate_sequences_cmdline.hpp \
    tests/ufasta_src/dsort_cmdline.hpp \
    tests/ufasta_src/sort_cmdline.hpp \
    tests/check_cigar_cmdline.hpp tests/check_LCP_cmdline.hpp

在stackoverflow上检索,发现与我问题相似的有很多答案,原来是

在configure的时候check安装环境,check的结果

checking for yaggo... false
checking for gnuplot... no
checking for gnuplot5... no
checking for gnuplot4... no

结果为false or no的软件安装没有注意到,所以导致了下一步的错误
安装yaggo, gnuplot然后 删除之前的可执行文件,重新再来吧

sudo apt-get install yaggo
sudo apt-get install  gnuplot

一切准备就绪后。。。。

autoreconf -fi
./configure --prefix=/path/to/installation
make clean
make
make install

安装非常的顺利,这里我多了一个步骤 make clean,关于这个的原因请参考我的另一篇文章[源码与tarball软件安装]

心路历程

系统的配置是需要大量的时间的,包括软件下载的时间,安装的时间,而且中间还有很多的bug,一个一个不断的补充,才能更加完善。当然最重要的问题在于自己基础知识的积累不够以及粗心大意所以才挖了这么多的坑。欢迎小伙伴们一起讨论软件安装那些事儿!

参考资料

  1. 软件安装说明
  2. 源码与tarball软件安装
  3. 《鸟哥私房菜》
  4. Ubuntu下gcc安装及使用
  5. Stack Overflow,Ask Ubuntu, CSDN等博客网站

欢迎大家一起讨论软件安装的心路历程,同时欢迎大佬们指正。
我是新手:夏夏

相关文章

  • Linux上安装Tarball软件------以MUMmer为例

    下文以一个生物信息学小软件MUMmer为例,说明一下tarball软件的安装流程。根据mummer软件Github...

  • 安装git

    windows下面安装git: linux上安装,以centos 6.6为例: yum命令安装: 编译git源码安装:

  • kakfa 入门

    一 安装及简单使用 kafka可以安装在windos mac linux上,以mac为例mac 安装步骤: 创建主...

  • LINSTOR

    描述 环境 至少2个系统版本一致的Linux系统,以Ubuntu系统为例 安装 添加ppa源 更新源 安装软件 配...

  • 生信星球学习小组Day6

    Linux环境下的软件安装 第一部分:下载安装miniconda 第二部分:使用conda 以fastqc软件为例...

  • linux上安装java和eclipse

    linux系统上以Ubuntu为例 安装java,即安装JDK,在安装java编辑器,即java的IDE ecli...

  • 如何从svn服务器上下载程序代码到本机上

    首先需要在电脑上安装一个SVN软件,我这里以TortoiseSVN为例: 1,安装SVN管理软件,Tortoise...

  • Linux-centOS 7

    界面切换 安装软件 用 yum 命令直接部署 (以安装 nodejs 为例)

  • Linux系统安装

    Linux安装 本章节我们将为大家介绍Linux的安装。 本章节以 centos6.4 为例。 centos6.4...

  • Linux 基础教程 34-软件包管理-RPM

        对于Linux而言管理各类软件,如安装、卸载和升级等是常有的事情和必备的技能。以CentOS为例,常用的安...

网友评论

    本文标题:Linux上安装Tarball软件------以MUMmer为例

    本文链接:https://www.haomeiwen.com/subject/cggfyqtx.html