linuxでどこまでできる?

 分子生物関連のフリー/オープンソースなソフトウェアをインストールしてみます。現在作業中です。もしこれなら動くぞ,などのレポートがございましたら,メール下さい。これだけディストリビューションが増えるととても全部把握できません。どうかよろしくお願いいたします。

アラインメント・ソフトウェア

 やってること自体は文字列のmatchingに近い動的計画法のプログラムですから,そんなにインストールが難しいわけではないのでしょうが,ソフトの使い心地はGUIに大きく依存します。そういう部分では,X-windowのグラフィック関係のライブラリなどが問われるようになってきます。
Clustal X 1.8 Julie Thompson, Toby Gibson at European Molecular Biology Laboratory and Des Higgins EMBL outstation

Thompson, J.D., Higgins, D.G. and Gibson, T.J. (1994) CLUSTAL W: improving the sensitivity of progressive multiple sequence alignment through sequence weighting, positions-specific gap penalties and weight matrix choice. Nucleic Acids Research, 22:4673-4680.

特徴:かなり進んだGUIを持っているClustal Xです。古いClustalVのMac版などではアラインできる遺伝子が30本までなどの制約があったと記憶していますが,ClustalXでは,PowerMac版,Linux版ともに少なくとも1500bp266本までは大丈夫のようです(ただし,アラインするだけでCeleron 533でovernightかかります)。
機能:ファイルから塩基配列を読み込み,アラインしたものを,
phylip形式で出力してfastDNAmlなどの最尤系統樹計算ソフトのプリプロセッサとして使う,
アラインした配列をカラーでPS形式で出力する,
近隣結合系統樹を計算(ブートストラップのオプションあり)したりできます。

インストール方法:配付されているソースからのコンパイルにはMotif(有料のグラフィックライブラリ)またはlesstifのほか,NCBI toolkitが必要です。
しかし,これらを準備してコンパイルしなくても,解凍すればすぐ使えるLinux/x86用static linkバイナリ版が配付されています。Ashok Aiyarさんに感謝です。

 以下はこのLinux/x86用static linkバイナリ版をftp後,
# tar zxvf clustalx.1.8.linux.tar.gz
で解凍し,できたclustalx.linuxディレクトリのclustalxを実行した結果です。

TurboLinux3.0J 試していません
TurboLinux4.0J (FTP版) 良好 1500bp, 350本のアラインの最後でsegmentation faultを起こしてあっけなく終わったりする事も。ただし,これよりも大きいデータで完動した実績もあり,原因不明です。一応,パラメータを大きくしてコンパイルしてみることにしました。
TurboLinux4.2J (FTP版) 試していません
Kondara Linux 1.0 libXm.so.1が足りないと文句を言われました。これはMotifパッケージに含まれるライブラリですが,フリーのLessTifで代用することができます。
Kondaraのftpサイトでlesstif-****.i386.rpmを見つけることができませんでしたので,オリジナルのLessTif.orgのホームページからlesstif-0.89-1.src.rpmをダウンロードし,ビルド後インストールしました。ホームページにはライブラリをうまくロ−ドできるようldconfigせよ,などと書いてあるのですが,なぜかうまくいかなかったので,乱暴ですが,/usr/X11R6/lesstif/Motif1.2/lib/以下のライブラリ(とそのリンク)を/usr/X11R6/libにコピーでブチこみました。XmToggleButtonの値が変,などと警告メッセ−ジは出ますが,とりあえずアラインや系統樹作成はできてます。
Vine Linux 1.0 良好まったく問題ないです(たぶんLesstif.orgのホームページからlesstif-0.88-1.i386.rpmあたりをインストールしていたためと思われます)。
Vine Linux 1.1 良好まったく問題ないです(たぶんLesstif.orgのホームページからlesstif-0.88-1.i386.rpmあたりをインストールしていたためと思われます)。
Vine Linux 2.0 リリース待ちです。
日本語Red Hat Linux6.1 試していません
Laser5 Linux6.0 rel2 試していません
自分でコンパイルする:TurboLinux4.0ftpでの例ですが,他のディストリビューションではどうかな?

手順1 まずフリーのMotifクローンをインストールします。LessTif.orgのサイトからご自分のglibcバージョンにあったrpmパッケージをダウンロードして,rpm -Uvh lesstif*.rpmしましょう。すくなくともlesstif-versionNo..i386.rpmというのとlesstif-devel-versionNo..i386.rpmというのが必要だと思います。

手順2 NCBIツールキットのソースを入手します。NCBIのftpサイトからたどって最新版をftpしましょう。/usr/local/に/usr/local/toolkitというディレクトリを作り,そこにncbi.tar.gzを保存し,
# tar zxvf ncbi.tar.gz
すれば,/usr/local/toolkit/ncbi/以下にソースが展開されます。コンパイルとインストールは/usr/local/toolkit/ncbi/make/readme.unxに記載してある通りに,toolkitディレクトリで
# ./ncbi/make/makedis.csh 2>&1 | tee out.makedis.csh
とやればインストールまで一発でした。

手順3 clustalx.linuxのディレクトリに移動し,makefileを手直しします。NCBI_INC を先のNCBI toolkitのincludeディレクトリに変更します。私の例ですと,
NCBI_INC=/usr/local/toolkit/ncbi/include
となります。この後,rootになってmake installで完成です。デフォルトでは/usr/local/binにバイナリができます。不都合ならmakefileを手直しして下さい。

tkDCSE2.2 Copyright Peter De Rijk, University of Antwerp (UIA), 1993

Peter De Rijk and Rupert De Wachter: DCSE v2.54, an interactive tool for sequence alignment and secondary structure research. Comput. Applic. Biosci. 9:735-740, 1993.

The rRNA databaseの定番アラインメントソフトです。Linux版のバイナリパッケージが公開されています。
機能:The rRNA databaseで検索した塩基配列(当然ssuまたはlsuということになりますが)の整列データ(2次構造を示す符号付き)をDCSE形式で保存したものを読み込み,ループ/ヘリックスなどの構造も勘案してアラインしてくれます。その状態でギャップや構造を示す符号を剥ぎ取ってテキスト形式のデータとして保存することができます。
特徴:The rRNA databaseのデータメインテナンスに使われているだけあって安定していますし,かなりの本数まで読み込めるようです。メモリにもよると思いますが,たしかThe rRNA databaseのすべてのssu rRNA15000本,80Mを読み込んでも落ちなかった記憶があります。
言い訳:バイナリ配付なのですが,バイナリなのはオランダ語用のパッチのあたったTcl/Tkパッケージでそれ以外はTcl/Tkのスクリプトをインストールするようになっています。当然,ディストリビューションではもともと日本語パッチの当たったTcl/Tkがインストールされており各種GUIなプログラムで多用されてますので,これを指示通りアンインストールするのは勇気が必要です。ほんとはいけないのでしょうが,以下では/usr/libにある日本語Tcl/Tkをアンインストールせずに温存したまま,/usr/local/libにインストールしてしのぐという姑息な手段を使っています。

インストール:tkdcse-linux-3.4.tar.gzをftpし,/usr/localあたりでパッケージを解凍
# tar zxvf tkdcse-linux-3.4.tar.gz
してできたtkdcse_homeディレクトリに移動し,
# ./install
インストールスクリプトを実行します。Tcl/Tkでできたインストーラが起動してGUIでインストールが進行します。
# export TCL_LIBROOT=/usr/local/tkdcse_home/lib
とライブラリのありかを環境変数に入れておいて,
# ./tkdcse
などと実行します。

TurboLinux3.0J 良好 まったく問題なくインストールできました。もちろん,使用も問題ありません。
TurboLinux4.0J (FTP版) 良好 まったく問題なくインストールでき,動いています。結局院生用に作ったmolbio-linux用K6-2-400 ワークステーションでは,TurboLinux4.0(ftp)でKDE1.1.1を走らせています。
TurboLinux4.2J (FTP版) だめだめ インストーラーが起動しません。glibcかTcl/Tk(またはそれらの旧版互換パッケージ)のバージョンの違いが原因のようです。
Kondara Linux 1.0 だめだめ インストーラーが起動しません。glibcかTcl/Tkのバージョンの違いが原因のようです。
Vine Linux 1.0 良好beta1では,インストールスクリプトを起動すると,libX11.so.6が足りないと文句を言って止まっていたのですが,1.0では問題なくインストールできます。何が違うのでしょう?
Vine Linux 1.1 良好まったく問題なく使用できています。
Vine Linux 2.0 リリース待ちです。
日本語Red Hat Linux6.1 試していません
Laser5 Linux6.0 rel2 試していません
Clustal W 1.6 Julie Thompson, Toby Gibson at European Molecular Biology Laboratory and Des Higgins EMBL outstation

Thompson, J.D., Higgins, D.G. and Gibson, T.J. (1994) CLUSTAL W: improving the sensitivity of progressive multiple sequence alignment through sequence weighting, positions-specific gap penalties and weight matrix choice. Nucleic Acids Research, 22:4673-4680.

MacやWinにも移植され広く使われている定番のアラインメントソフトです。塩基配列を読み込んでアラインし,結果をPostscriptファイルに出力したり,系統解析したりできます。これはClustalXをインストールすると自動的についてきます。
TurboLinux3.0J 良好 解凍したときにできるMakefileはゴミのようでして,これを
# mv Makefile Makefile.org
# mv makefile Makefile
とし,内容のCFLAGでccをgccに書き換えて,後は
# makeで一発でした。
Vine Linux 1.0 良好同上
日本語Red Hat Linux5.2 良好

制限酵素切断部位検索ソフト

 コンソール画面で文字列のmatchingですので,ライブラリ依存性はないようです。
tacg2.35 Copyright (c) 1996,1997 by Harry Mangalam at Univ. of California, Irvine
コンソール画面(kterm)で用いる制限酵素切断部位検索ソフトです。Linux版のバイナリパッケージが公開されています。インストールは,パッケージを解凍し,新たにできたtacg-2.35ディレクトリの中のtacgを実行ディレクトリにコピーし,制限酵素の配列情報データを格納した添付データファイルを置く位置をexport tacglib=/usr/lib/tacgなどと指定するだけです。
TurboLinux3.0J 調査中 まだ試してません。
Vine Linux 1.0 良好まったく問題なくインストールできました。
日本語Red Hat Linux5.2 調査中

 

分子系統解析

 ここで紹介する最尤法(most likelihood method)は,OTUが増えるにつれて計算量が爆発的に増加します。昨年の夏はLinux/Alpha 500MHzマシンで約2週間かかって終わりかけた計算を落雷時の瞬間停電で何度も蒸発させていました。fastDNAmlはphylipパッケージのdnamlよりも約150倍高速で,checkpoint.PIDファイルに途中経過を書き出しながら進むので,いざというときにはresumeで止めたところから計算を再開することもできます。
 ベースは有名なPhylipパッケージのなかのdnamlなのですが,phylip用の.phy形式のファイルをいきなり食わせることはできません。どうしてうまくいかないか,久々に使って2日間悩みました。
fastDNAml a program derived from Joseph Felsenstein's version 3.3 DNAML (part of his PHYLIP package) written by Joseph Felsenstein. Permission is granted to copy and use this program provided no fee is charged for it and provided that this copyright notice is not removed.

 Olsen GJ, Matsuda H, Hagstrom R & Overbeek R. (1994) fastDNAmL: a tool for construction of phylogenetic trees of DNA sequences using maximum likelihood. Computer Applications in the Biosciences 10:41-8. 

機能:遺伝子配列をもとに最尤法にもとづく系統樹を推定します。

特徴:Felsenstein博士の開発したphylipパッケージに含まれるdnamlを160倍くらい高速化したバージョンです。それでも77 OTUで約4時間かかっています(Celeron 533/TurboLinux4.0ftp)。
resume機能がついているので,途中で止めたところから計算を再開することができます。また,元祖dnamlにはないbootstrapオプションも組み込んであります。
コンソールで使うソフトで,とくにグラフィックライブラリなどは必要としません。
checkpoint.PIDファイルに途中経過を書き出しながら計算を進めます。

インストール:./install.txtの指示通りにやれば簡単にコンパイルできます。

使い方のコツ:./script以下にfastDNAmlをうまくつかうためのシェルスクリプトがいくつも付属しています。ClustalXでPhylip形式で保存した(Phylipパッケージのdnamlでちゃんと読める)*.phyファイルは,そのままではfastDNAmlでは処理できません。もとのデータファイルに手を加えるか,あるいはこれらのスクリプトを通してデータファイルを修正したものをパイプで送り込みます。
なおこれらの修正は,ほんのちょっとしたものです。たとえば,データの一行目に"F"オプションを付け加えるだけのfrequenciesスクリプトを使って
$ frequencies < infile.phy | fastDNAml > outfile
という感じで使います。もちろん,infile.phyにエディタでFを追加しても同じです。
最尤法の計算はとても時間がかかります。CPUを独占的に使って少しでも早く切り上げたい場合,
$ ps aux
で,fastDNAmlのPID(process ID)を調べ,rootになって
# renice -20 PID
で優先度を上げることができます。
また,カレントディレクトリのcheckpoint.PIDに途中経過を書き出しますので,tailコマンドで監視することができます。
$ tail -f outfile

TurboLinux3.0J  良好 問題ありません。
TurboLinux4.0J (FTP版) 良好 まったく問題なくインストールでき,動いています。
Vine Linux 1.0 良好 問題ありません。
日本語Red Hat Linux5.2J 良好 問題ありません。


プライマー設計

 やってること自体は文字列のmatchingに近いのですが,反応条件の予測などのきめ細かな設定がうまくできるソフトが望ましいですね。
Primer3 release 0.9 Copyright (c) 1996,1997,1998 Whitehead Institute for Biomedical Research. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Steve Rozen, Helen J. Skaletsky (1996,1997,1998) Primer3. Code available at http://www-genome.wi.mit.edu/genome_software/other/primer3.html

ソフト自体はgcc用のMakefileがついてきますので,make一発です。できあがったprimer3_coreはコンソール用のソフトですが,添付のprimer3_www.cgi, primer3_www_results.cgiなどと組み合わせると,プライマー設計をwwwで行うサーバーが簡単に構築できます。
TurboLinux3.0J 良好 問題ありません。
Vine Linux 1.0 良好Apache1.3.3でcgiを動かしてまったく問題なしです。
日本語Red Hat Linux5.2 調査中たぶん問題ないでしょう。

遺伝子コーディング領域の予測

 やってること自体は文字列のmatchingに近いのでしょうが,補間マルコフモデルを用いて,ある程度の長さの意味のある(アミノ酸に翻訳可能でストップコドンが入らない,などなど)塩基配列を探し出すソフトウェアです。ゲノムデータベースのデータからreverse geneticsするには必須のツールということになるのでしょう。
Glimmer v1.03 The Glimmer code was written by Art Delcher.
Glimmer is available free of charge to researchers using it for non-commercial purposes.

S. Salzberg, A. Delcher, S. Kasif, and O. White: Microbial gene identification using interpolated Markov models . Nucleic Acids Research, 26:2 (1998), 544-548.

非商用の学術利用に関してはフリーですが,anonymous ftpはできません。.eduまたは.ac.countryドメインからのe-mailでagreementを送信し,返信でバイナリをメールしてもらわなければなりません。以前,私の勤務先でメールシステムが崩壊しacドメインからメールが出せなかったとき,WWWブラウザで使えるnetscape.netからのwebメールで事情を説明してお願いしたのですが,「あなたがacademicな組織の人だと判断できない」とニベもなく断られてしまいました。
 http://www.cs.jhu.edu/labs/compbio/glimmer.htmlが本来のホームページのアドレスらしいのですが,TIGRのものと同一内容のようです。ソフト自体はlinux用のバイナリがついてきます。
TurboLinux3.0J 確認中
Vine Linux 1.0 確認中インストール自体は問題ありません。
日本語Red Hat Linux5.2 調査中

タンパク分子の3次元モデリング

 Raster3Dの場合は,MesaGLグラフィックライブラリとFortran77コンパイラが必要です。Molscriptの場合も各種グラフィックライブラリが必要になり,24-bitフルカラー環境でないと動かなかったりします。
molmol 2.6This software package and all of the files in this archive are copyrighted by BRUKER/Spectrospin and ETH Zurich. They may only be distributed and/or modified according to the guidelines listed below.

Koradi, R., Billeter, M., and Whrich, K. (1996)
MOLMOL: a program for display and analysis of macromolecular structures.
J Mol Graphics, 14, 51-55.

 Piyota@脱力系さんからのご紹介です。バイナリが公開されており,インストールは楽でした。
TurboLinux3.0J

調査中
Vine Linux 1.0

良好高機能な分,Pentium-150では少しレスポンスが遅いようですが,感動します。
日本語Red Hat Linux5.2 調査中
Raster3D 2.4hfreely available but unsupported.

Merritt, Ethan A. and Bacon, David J. :Raster3D: Photorealistic Molecular Graphics. Methods Enzymol. 277, 505-524, 1997.

 Fortran77のソースが公開されていますので,これをGnu fort77コンパイラでコンパイルすることになります。と言っても,自動的にお膳立てをしてくれるMakefileがついているので,make all; make installと打ち込むだけでコンパイル/インストールは終了してしまいます。
 Brookhaven Protein Database(PDB)ファイルをモディファイした構造データを読み込んで,各種画像形式の24bitのphotorealisticなイメージを出力します。Macでも使えるRasMolと比較しても,そのリアルさ,美しさは勝負あった,という感じです。
TurboLinux3.0J

良好libjpeg-devel-***.i386.rpmというパッケージをftpサイトのupdatesから追加インストールする必要があります(その中のjpeg.hというインクルードファイルが必要)。
さらにMakefileの手直しが必要です(Makefile修正内容は差分ファイルで公開の予定です)。
以上の手順でmake一発できます。
Vine Linux 1.0

コンパイルエラーを止めることができませんでした。むしろmolmolの方が楽にインストールできるようです。
日本語Red Hat Linux5.2 調査中
Molscript2.1.2copyright 1997-1998 Per J. Kraulis
Academic license is to be signed by you, and submitted to Avatar Software AB
Per J. Kraulis, "MOLSCRIPT: A Program to Produce Both Detailed and Schematic Plots of Protein Structures", Journal of Applied Crystallography (1991) vol 24, pp 946-950.
 ANSI Cのソースが公開されています(アカデミックな用途にはフリーですが,ダウンロードには登録が必要)。
 PDB形式のデータを読み込み,直接画面に出力しマウスでグリグリ動かしたり,各種画像ファイル形式で出力したり,Raster3D用にフォーマットしたデータファイルを出すこともできます。
TurboLinux3.0J

調査中 MakefileのなかのOpenGL関係のライブラリ位置をMesaGL(OpenGL互換のフリーなライブラリ)のそれに変更する必要があります。一応それでmake一発なのですが,私のex-DEC HINote Ultra II(16-bit 64k色のx-window)では,24-bitのビデオモードでないと動かないとダダをこねますので,動作確認はできてません。
Vine Linux 1.0

Mesaのパッケージを拾ってきてインストールしたのですが,なぜか要求されるglu.h, gl.hというインクルードファイルが見当たりません。むしろ,molmolの方が楽かもしれません。
日本語Red Hat Linux5.2 調査中


参考文献

Doolittle, R. F. (ed): Computer methods for macromolecular sequence analysis. Methods Enzymol., 266, Academic Press, San Diego, 1996.
Nucleic Acid Res Database issue 27(1):1-379, 1999.
Merritt, Ethan A. and Bacon, David J. :Raster3D: Photorealistic Molecular Graphics" Methods Enzymol. 277, 505-524, 1997.
金久實,中井謙太(編):特集「ゲノム情報から生命の原理を探る」bit6月号,共立出版