ログイン 概要 よくある質問

ABySSをインストールしようとしたところエラーが生じました。調べたところgccのバージョンを4.3以上にしなければならず、gmp、mpfr、mpcをインストールしようとしました。gmpとmpfrは多分うまくインストールできたのですが、mpcがうまくインストールできません。

cd mpc-0.9
./configure --with-mpfr=/Users/------------/Desktop/mpfr-3.0.1
make
make check
すると

5 of 60 tests failed

make[2]: [check-TESTS] Error 1
make[1]:
[check-am] Error 2
make: *** [check-recursive] Error 1

というようにエラーが生じてしまいます。

またこの方法で進んでいってよいのでしょうか? ご助言いただけると幸いです。

質問日 Jun 01 '11 at 19:26

pan's gravatar image

pan
1157

ちなみに gmpとmpfrはhttp://blog.chibiegg.net/2009/04/09_11_285.htm を参考にして

mpcは http://www.multiprecision.org/mpc/download/mpc-0.9.pdf を参考にしました。

(Jun 01 '11 at 19:28) pan pan's gravatar image

ABySSが使いたいだけなのにgcc関連でループするのも何なので、一応インストールできた方法を書いておきます。

  1. HPC Mac OS X というサイトから、gcc4.6 (gcc-snwleo-intel-bin.tar.gz) を持ってきます。
  2. このファイル内には、ディレクトリ構成まで丸ごと構築されているデータセットが入っていますのでそのまま展開します。
    /(最上位ディレクトリ)を展開先にしますので、sudoもしくはsu権限で実行してください。
    また、安全策のために古いファイルを上書きしないようなオプションを付け加えてますので、tarが吐く「対象ディレクトリは既に存在しています」というエラーは無視して下さい。
    tar -zxvf gcc-snwleo-intel-bin.tar.gz -C / --keep-old-files
  3. デフォルトのgccより先に、今回入れたgcc4.6を見に行くようにbashの環境設定を変更します。
    ~/.bashrc というファイルに以下の1行を追加します。
    export PATH=/usr/local/bin:$PATH
  4. 上の設定は即時反映ではなく、次回terminalを開いた時に有効になるので、現在作業している環境でも1度だけ設定を行い、gccが4.6を指しているか確認します。
    export PATH=/usr/local/bin:$PATH ; gcc -v
  5. ABySS 1.2.7をダウンロードして展開します。
  6. google sparsehash 1.10もダウンロードして展開します。ABySSとsparsehashのバージョン相性がありそうなので注意して下さい。
  7. sparsehashを先にインストールします。
    cd sparsehash-1.10/ ; ./configure && make && sudo make install
  8. 画面に、install -c コマンドのログが表示されていればsparsehashが入っていますので、次の作業に進めます。
  9. configureの時にABySSの挙動を指定します。詳しくはREADMEを読んで見て下さい。
    cd abyss-1.2.7; ./configure --enable-maxk=128
  10. makeします。make一発だとなぜか上手くいかないので、警告オプションを付加します。
    make AM_CXXFLAGS=-Wall && sudo make install
  11. abyssが動いてそうなのがチェックできたら、一応終わりです。
    /usr/local/bin/abyss --version

回答日 Jun 02 '11 at 14:57

mya_'s gravatar image

mya_ ♦
3881914

abyss実行できました。ありがとうございます。
  最後にまたいくつか質問させてください。約130万readをアセンブリしたところ、実行後で約140万readと増えて、断片化されています。ABYSS -k25 reads.fa -o contigs.faで実行しました。  また今回454の次世代シークエンスを使って配列を読んだのですが、通常ならnewblerを使うところabyssを使いました。原理的に違う事はわかっていますが、やられた方はあまりいないのでしょうか??

(Jun 02 '11 at 16:25) pan pan's gravatar image

ABySS実行できてよかったですね。K-mer分割型アセンブラだと、読み塩基は間違っていても読んでいる塩基数は正しそうという前提でhash組み合わせしたりしますので、そのへんを改良したアセンブラ(CABOGとか)でないと上手くいかないのかも、しれませんね。別の質問は別のスレッドを立てると後々検索しやすく便利ですよ。

(Jun 03 '11 at 12:59) mya_ ♦ mya_'s gravatar image

パス指定から察するに、Mac OS-Xをお使いかという前提で回答してみます。 使っているマシン(Win/Linux/OS-X)とバージョンを書き込むと、もっと適切な回答が返ってくるのではと思います。

ネット検索からの情報を見ると、

  1. mpcライブラリを入れるときは、mpfrとgmpのインストール先両方が必要(←この青文字クリックで検索元にジャンプします)に読めます。

あと、まったく本質的な解決方法ではないかとは思いますが、以下も検討してみてください。

  1. MacPortsという便利ツールをつかってGCC一式いれてしまう
  2. makeが通ってたら多少のエラーは無視してABySSが動けばそれで良しとする
     (BioPerlとかはこういう割り切りが必要な場合も) 

回答日 Jun 02 '11 at 09:06

mya_'s gravatar image

mya_ ♦
3881914

edited Jun 02 '11 at 09:08

使っているマシンはMac OS X 10.6.7です。mpfrとgmpはインストールして、/usr/lacal/include/のなかにgmp.h, mpf2mpfr.h, mpfr.hが入っている状態です。

あげられた解決方法でも検証してみます。

(Jun 02 '11 at 11:59) pan pan's gravatar image
あなたの回答
プレビューをトグルする

この質問をフォローする

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

回答

回答とコメント

タグ:

×47

質問日: Jun 01 '11 at 19:26

閲覧数: 3,502 回

最終更新日: Jun 03 '11 at 12:59

powered by OSQA