linux gnuplot yum源,[原创]【NGS数据分析经验分享】1-4 编译安装常用工具(举例)和编辑终端配置文件 - 生物信息学 -丁香园论坛...

大多数NGS分析工具以源代码形式发布。以FASTX-Toolkit为例,演示编译安装源代码形式发布的工具的编译安装方法。FASTX-Toolkit从下面的地址下载。

4b00d68617232c133f7af8c9b5d5e26c.png

最新的0.0.14版本需要下载源代码,老的0.0.13版本可以直接下载编译好的版本(就是下载完解压缩就能直接用)。我们下载新版。新版需要另一个库libGTextUtils的支持,我们同时下载配套的0.7版本。下载方法同前(右键复制地址,然后在PuTTY里用wget下载)。我习惯一般都下载到Linux主目录下Downloads目录里,你随意。

579a45a3f35b66ac787ca8a43eb1cf31.png

回到网页,想要运行FASTX-Toolkit的完整功能还需要其他软件包的支持。

62e4685b6649f0463fcfd192acb08015.png

需要 GNU G++ 4.1.2以上版本(我的系统是4.8.5,用g++ --version查看版本),两个Perl模块(module)PerlIO::gzip和GD::Graph::bars(需要安装),gnuplot 4.2以上版本(需要安装)。运行下面的命令安装gnuplot。

sudo yum install gnuplot

在上一节我们配置了cpan并安装了cpanm。可以用cpan和cpanm安装Perl的模块。

cpanm PerlIO::gzip

cpanm GD::Graph::bars

dc871905f3751d2d7e540532f37c319f.png

cpanm同样会自动查找并安装关联的模块。然而我们发现“‘GD’ is not installed”。这是由于系统缺少GD库。我们需要先安装GD库。

sudo yum install gd gd-devel

然后重新运行cpanm GD::Graph::bars,显示安装成功。(编译Linux软件包一定要火眼金睛,在满屏幕文字中找是不是有错误。)

在满足了FASTX-Toolkit运行需求之后,下面编译安装FASTX-Toolkit。

一般来说,以源代码形式发布的工具,都会有一个configure程序,运行这个程序会检查编译环境,是否缺少运行库及版本。如果一切满足,就会生成编译脚本。之后执行make编译,make install安装。所以下面我们会经常使用这一组命令组合。假定你想要安装工具的路径是/path/to/the/tool,源代码路径是/source/of/the/tool,下面是一个命令模板。

cd /source/of/the/tool

./configure –prefix=/path/to/the/tool

make && make install

如果一切运行成功,那么在你指定的/path/to/the/tool目录下就会有新的工具程序生成(这个目录下可能会生成bin, lib, include, share等几个子目录)。

比如安装libgtextutils,首先解压缩下载的文件。

tar zxvf libgtextutils-0.7.tar.gz

d014c155fba17bc4478b96603e0599de.png

运行下面命令。

cd libgtextutils-0.7

./configure --prefix=$HOME/Tools/libgtextutils-0.7

make && make install

然后我们进入指定的安装目录查看。

8fcba3fa00a6fed8d4b1716059e6e939.png

其中有3个目录(因为安装的是个库,所以一般没有bin子目录)。

下面用类似方法安装fastx_toolkit。

cd ~/Downloads/

tar jxf fastx_toolkit-0.0.14.tar.bz2

你会发现我用的解压缩命令略有不同。一般来说,下载的源代码文件常常是几种压缩格式,gz,bz2,xz。对应的解压参数分别是z,j,J。比如,解压缩gz就是tar zxvf;解压缩bz2用tar jxvf;解压缩xz用tar Jxvf。其中,x参数表示执行“解压缩”,v参数在屏幕上显示详细信息(解压出的一大堆文件名),f参数指定操作其后面的文件。

然后运行配置程序。

./configure --prefix=$HOME/Tools/fastx_toolkit-0.0.14

然而这一次,系统报了一个错。

9012b393a9ccd3343b2837747f107fa1.png

这是因为,我们虽然安装了gtextutils,却没有告诉系统它在哪儿(Linux系统可傻了,你不告诉它,它就不知道)。根据提示,我们修改PKG_CONFIG_PATH 环境变量,告诉系统gtextutils的位置。然后重新运行配置程序。

export PKG_CONFIG_PATH=$HOME/Tools/libgtextutils-0.7/lib/pkgconfig

./configure --prefix=$HOME/Tools/fastx_toolkit-0.0.14

这一次应该可以了。运行make && make install安装。

进入安装FASTX-Toolkit的目录($HOME/Tools/fastx_toolkit-0.0.14),查看并测试。运行每一个程序并带参数-h(个别程序没有这个参数),如果没问题,会给出这个程序的用法。

./fasta_clipping_histogram.pl

还记得吗?Linux很傻。虽然你安装了程序,它就在你眼前,但是Linux不知道。你需要告诉Linux到哪里找它。方法有:(1)给出路径,比如~/Tools/fastx_toolkit-0.0.14/bin/fastx_trimmer;(2)如果程序在当前路径下,可以用./fastx_renamer(这其实也是给出路径,只不过是相对路径);(3)把程序路径放在系统变量PATH里。当安装的程序越来越多,每次用路径名太麻烦了。我一般使用第三种方法。下面我们编辑~/.bashrc文件,把程序路径添加到系统变量PATH,这样每次打开终端,这个路径就会自动设置。在Linux终端,一般使用vi工具来编辑配置文件。vi工具很强大且容(Nan)易(Yi)使用。下面介绍更麻(Rong)烦(Yi)的方法。需要在Windows中安装2个软件WinSCP和Notepad++。在将来远程操作服务器的时候,你会发现这两个软件是多么实用。在这里下载,有安装包和便携包两种,看你喜欢。

运行WinSCP(就一个WinSCP.exe文件有用,我把它放桌面上了)。

208b9e0e494d29f7c9b3db117b0d2cff.png

弹出一个登陆对话框。在右侧填写“Host name”,“User name”和“Password”(就是你PyTTY登陆的主机一样的),点“Save”保存(起个名字吧)。

3829aee821f6d9aab21f6bc59aead155.png

虽然说不推荐,但是我的虚拟机里面也没啥重要的东西不是,保存密码吧,少年!然后“Login”。

213dc27200d5c07823297b727878a55d.png

和PuTTY一样,WinSCP在第一次连接Linux的时候也需要存储密匙(因为两者都使用SSH协议)。

673df847ccd097bc9738a90f4e70707f.png

左侧是你的Windows目录,右侧是Linux目录。按快捷键CTRL+ALT+H显示隐藏文件(也可以在设置中找,你自己找吧)。

941396a44a6a861022d8a4204873757e.png

找到.bashrc文件,点鼠标右键,选“Edit”,然后“Configure…”。

2548d067411b84ad2a5ac638fe7bdb97.png

点击“Add…”

33ce33c83584b99aad4a2d718580a771.png

选“External editor:”,然后点“Browse…”找到你安装的notepad++程序。按“OK”。

4bbe9203a95105be49a5fa009c7189eb.png

按“UP”和“Down”调整编辑器顺序,把Notepad++移动到第一个。按“OK”完成设置。这样,以后双击WinSCP中的文件,就会默认用Notepad++打开。双击.bashrc文件。

fcd11a858cc197a80a6da7a77cd85067.png

文件在Notepad++中打开,我们需要编辑的是最后一行“export PATH=…”,把这一行改成下面这样。

# User specific aliases and functions

#

#Systom tools

export PATH=/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin

#General tools

PYTHONPATH=$HOME/Tools/Python-2.7.14

export PATH=$PYTHONPATH/bin:$HOME/perl5/bin:$HOME/.local/bin:/home/bionux/bin:$PATH

#NGS tools

export PATH=$HOME/Tools/fastx_toolkit-0.0.14/bin:$PATH

b92996032674925e212804c23601e4c8.png

不同路径之间用“:”分开。“#”开头的行是注释。上面段是系统全局定义,不要改动。“# User specific aliases and functions”这行字下面是我们自己改的。第一段,“export PATH=/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin”是系统程序的路径,千万不能缺,不然很多东西都会出错。第二段,我把基本工具(python,Perl等)路径加了进去(注意尾巴上的“:$PATH”非常十分特别重要,它引用了前面对PATH的定义,如果缺少了,前面等于没写)。第三段添加了NGS工具软件路径(暂时只有FASTX-Toolkit,后面会逐渐添加)。保存这个文件(这个保存操作会直接应用到远程Linux服务器上,不信你用less ~/.bashrc看看)。重新打开终端~/.bashrc会自动执行,或者用下面命令手动执行~/.bashrc文件。

. ~/.bashrc

echo $PATH

.命令是个神奇的命令,它跟source差不多(有些微的差别,不过我忘记了),用来运行shell脚本。echo命令查看PATH变量的值,仔细检查,看看有没有错。

92f27968345a1790b72657b5ec6df1b6.png

有些工具以编译好的可执行文件形式发布,不需要编译,下载,解压缩,设置环境,运行就可以了。比如fastQC是个Java软件,在这里下载。

57bb983db25fcaacf2a4ac807ba23395.png

用下面命令解压缩。

unzip fastqc_v0.11.7.zip

309f736c55e3d2f7815a95a2227d188a.png

进入解压缩的FastQC目录。FastQC是个Java程序,不需要编译。只要系统中有Java就可以了(用java -version查看你的Java版本)。

d94c57726bad092b38aa30e1e30ee7b1.png

我的Java是OpenJDK 1.8.0_151版本(系统自带的)。

fastqc文件是运行脚本,解压缩出来的时候没有可执行权限(x)。用chmod命令增加可执行权限。运行该程序,查看使用帮助。

cd FastQC

chmod u+x fastqc

./fastqc --help

然后移动FastQC到~/Tools目录下,并添加路径到PATH里。

mv FastQC ~/Tools/

此处省略好几百个工具的安装说明。

总结几点:

(1)源代码形式发布的工具安装之前要阅读说明,确保需要的库都准备就绪(包括设置环境变量,不然系统找不到)。用三部曲模板安装(解压缩,配置,编译安装)。

(2)有些工具有编译好的包,直接下载、解压缩就行了。

(3)对于缺少的系统库,Python包,Perl模块,分别用yum,pip,cpanm或cpan安装。

(4)要仔细查看配置和编译过程中是否有错误,找出你的系统缺少那些库/包/模块。

(5)安装完成后,要记得设置PATH,不然系统找不到。

(6)有个别的软件需要Oracle JDK,而不是OpenJDK,有的需要老版本(1.7,1.6),这时你需要安装需要的Java版本,用绝对路径运行java程序。

======我是帅帅的分割线======

本帖将时不时更新,添加内容(就是在省略的好几百个工具里挑几个再写写)。

如果你在安装工具软件中遇到问题,欢迎在本帖提问。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值