Variant Effect Predictor (VEP)について
Variant Effect Predictor (VEP)は、ゲノムから得られたバリアントについて
アノテーションするためのソフトであり、ヨーロッパ分子生物学研究所の欧州バイオインフォマティクス研究所(EMBL-EBI)が開発しています。
インストール方法
VEPのインストール方法については、説明ページ を参照してください。
Dockerも提供されているので、これが便利かと思います。
この記事は、WSLにVEPをマニュアルでインストールした際に詰まったところを備忘録的に書いたものです。
まずは、WSLをインストールして起動してください。
マニュアルインストールに必要なライブラリの事前準備
ライブラリをインストールする前に、おまじない
sudo apt-get update
次に、必要なライブラリとPerlのCPANモジュールをインストールします。
gcc, g++, make
sudo apt-get install build-essential
Perl version 5.10 以上
すでにPerl 5.30が入っていました。
次に、PerlのCPANモジュールをインストール
cpan App::cpanminus
これでPerlモジュールをCPAN(モジュールの集積所)から取れるようになるので、
Archive::Zip, DBD::mysql, DBIの3つを以下のコマンドでインストールします。
cpan Archive::Zip
cpan DBD::mysql
cpan DBI
自分の環境では、DBD::mysqlをインストールしたときに
'YAML' not installed, will not store persistent state
Configuring D/DV/DVEEDEN/DBD-mysql-4.050.tar.gz with Makefile.PL
Can't exec "mysql_config": No such file or directory at Makefile.PL line 89.Cannot find the file 'mysql_config'! Your execution PATH doesn't seem
not contain the path to mysql_config. Resorting to guessed values!
とエラーが発生しました。
YAMLとmysql_confgが無いと言っているので、
YAMLは
cpan YAML
と打って、インストールします。
mysql_configは このサイトを参照して、
以下のコマンドでインストールできました。
sudo apt-get install libmysqlclient-dev
その後、もう一度、
cpan DBD::mysql
とすると、先ほどエラーの出ていたインストールできました。
インストール
あとは、インストールのインストラクションに従って、
git clone https://github.com/Ensembl/ensembl-vep.git
cd ensembl-vep
perl INSTALL.pl
とします。この時、以下のメッセージが出ることがありますので、
ERROR: Unable to unpack file ./Bio/tmp/release-1-6-924.zip without Archive::Extract or tar/unzip/gzip
Archive::ExtractをCPANから取ってきます。
cpan Archive::Extract
この後、再度 INSTALL.plを実行したところ、
Attempting to install Bio::DB::HTS and htslib.
If this fails, try re-running with --NO_HTSLIB
bzlib.h, lzma.h library header(s) not found in /usr/include. Please install it and try again.
(or to skip Bio::DB::HTS/htslib install re-run with --NO_HTSLIB)
と出ましたので、 Bio::DB::HTSをインストールします。
cpan Bio::DB::HTS
でもって、
perl INSTALL.pl
とすると、HTSLibが無いというエラーが出るので、
このページを参照してHTSLibをインストールする、もしくは、HTSLibのインストールをあきらめて
perl INSTALL.pl --NO_HTSLIB
としてインストールを進めてください。(HTSLibは、bgzipで圧縮されたFASTAファイルの読み取りの時間短縮に用いられるものですので、大量のバリアントデータをさばかない人には不要かと思います。)
HTSLibをインストールする際にも、XML::Parserなどでエラーが出ることがあるかもしれませんが、
都度、
cpan XML::Parser
とすることで不足しているモジュールをインストールすれば解決すると思います。
最後に
なんでDockerがあるのにマニュアルインストールをしているの?と聞かれそうですが、
Windows home買っちゃってDockerがうまく動かないんです(泣)