RAD-seqやMIG-seqの解析をする際に必要なSNP検出ソフト、Stacksのインストール方法について説明します。
MacOSの場合で説明します。
初心者向けの超基礎的な内容です。
2021年8月5日:内容変更
Homebrewやbiocondaで提供されているStacksは最新版ではないので、公式HPからダウンロードする方法を追記。現状ではこの方法が一番いいです。
Stacksのインストール(公式HPからの場合)
以降の作業はターミナルで行います。
まず、アプリケーションなど、適当なディレクトリに移動します。
公式ホームページからcurl
コマンドを使って最新版をダウンロードします(Linuxの人はwget
)。
ダウンロードしたフォルダを解凍して、中に入ります。
cd /Applications #適当なディレクトリに移動
curl -O http://catchenlab.life.illinois.edu/stacks/source/stacks-2.59.tar.gz #公式サイトからインストール
tar xfvz stacks-2.59.tar.gz #フォルダの解凍
cd stacks-2.59
普通にコンパイルします。
./configure
make -j 16 #スレッド数を指定
sudo make install
この時、以下のような警告が出ている場合があります(エラーではないので、コンパイルはできる)。
configure: WARNING: Unable to locate OpenMP library, you should probably specify '--disable-openmp'.
OpenMPライブラリを参照できないと、解析が並列処理できずに時間が掛かってしまいます。
この場合は、gccやg++をconfigureのオプションで指定してやるとうまく行く場合があります。
./configure CXX=g++-12 CC=gcc-12
# gccのバージョンは自分の環境に合わせる
# 最新版はHomebrewでいれる
# brew install gcc@12
make -j 16 #スレッド数を指定
sudo make install
M1やM2チップなどのAppleシリコン搭載Macの方は、上記の方法でないとうまくコンパイルできません。その際、ターミナルをRosettaを利用して開いてください。
Stacksのインストール(Homebrewを使う場合)
事前にMac用のパッケージマネージャであるHomebrewをインストールしておきます。
インストールは公式サイトにあるスクリプトをターミナルにコピペして実行するだけです。
Homebrewがインストールできたら、Stacksをインストールします。
まず、バイオインフォマティクス系のパッケージをbrew tap brewsci/bio
でHomebrewのリストに加えます。
準備ができたら、Stacksをbrew install stacks
でインストールします。
注意
Homebrewでの導入は楽ですが、Stacksの最新版が提供されていないので、公式HPからダウンロードする方法を推奨します。
Stacksを使ってみよう
とりあえず起動してみる。
既にパスが通っているはずなので、いちいちプログラムのあるディレクトリを指定する必要はありません。
ustacksのバージョン確認
$ ustacks -v
ustacks 2.59
sstacksのヘルプ表示
$ sstacks -h
sstacks 2.59
sstacks -P dir -M popmap [-p n_threads]
sstacks -c catalog_path -s sample_path [-s sample_path ...] -o path [-p n_threads]
-P,--in-path: path to the directory containing Stacks files.
-M,--popmap: path to a population map file from which to take sample names.
-s,--sample: filename prefix from which to load sample loci.
-c,--catalog: path to the catalog.
-p,--threads: enable parallel execution with n_threads threads.
-o,--out-path: output path to write results.
-x: don't verify haplotype of matching locus.
Gapped assembly options:
--disable-gapped: disable gapped alignments between stacks (default: enable gapped alignments).
ちゃんとインストールできてます。
トラブル
エラーで突然Stacksが動かなくなることが時々あります。
基本的にはStacksやCommand Line Toolsを再インストールしたり、gccを更新したりすることで治ります。
もっと楽な解決方法があるかもしれません。
% ustacks -v
dyld[92290]: Library not loaded: '/usr/local/opt/gcc/lib/gcc/11/libgomp.1.dylib'
Referenced from: '/usr/local/bin/ustacks'
Reason: tried: '/usr/local/opt/gcc/lib/gcc/11/libgomp.1.dylib' (no such file), '/usr/local/lib/libgomp.1.dylib' (no such file), '/usr/lib/libgomp.1.dylib' (no such file)
zsh: abort ustacks -v
下流の解析
引用文献
Rochette, N., A. Rivera‐Colón, and J. Catchen. 2019. Stacks 2: Analytical methods for paired‐end sequencing improve RADseq‐based population genomics. Molecular Ecology 28: 4737-4754. https://doi.org/10.1111/mec.15253