FastQC は Java で書かれた品質評価ツールです。配布サイトから ZIP を取得して展開する方法もありますが、本記事では Conda を使います。依存関係の解決と実行パスの設定をまとめて任せられるため、後続のツールを増やしていくときに管理が破綻しにくいからです。
1. なぜ Conda を使うのか
FastQC は単体で動くツールではなく、Java 実行環境を必要とします。手動で導入する場合、Java の入手、FastQC の展開、実行権限の付与、パスの設定を個別に行うことになります。Conda はこれを1コマンドにまとめます。
| 方式 | 依存関係 | 管理者権限 | ツールを増やすとき |
|---|---|---|---|
| 公式 ZIP を展開 | Java を自分で用意 | 不要 | ツールごとに手作業 |
| apt / yum | 自動 | 必要 | バージョン選択が困難 |
| Conda | 自動 | 不要 | 同じ手順で追加できる |
共用サーバーでは管理者権限を持てないことが多く、この点だけでも Conda を選ぶ理由になります。
生命科学ソフトウェア専用の配布チャンネルです。2018年時点で 3000 を超えるパッケージが登録され、コミュニティによって維持されています(Grüning et al., Nature Methods, 2018)。FastQC もここから取得します。対応 OS は Linux と macOS で、Windows では WSL2 上の Linux から使います。
2. チャンネルを設定する
チャンネルは、Conda がパッケージを探しに行く配布元です。既定では Bioconda を見に行かないため、最初に追加します。
bash
# 依存解決の基盤となる conda-forge を先に、bioconda を後に追加する
conda config --add channels bioconda
conda config --add channels conda-forge
# 優先順位を厳格にして、チャンネル混在による依存の破綻を防ぐ
conda config --set channel_priority strict
--add は指定したチャンネルをリストの先頭に差し込みます。上の順で実行すると、優先順位は conda-forge、bioconda、defaults の順になります。これは Bioconda が公式に推奨している並びです。順序を逆にすると、bioconda が conda-forge より優先され、共通ライブラリの版が食い違って解決に失敗することがあります。
設定は次で確認できます。
bash
conda config --show channels
3. 専用の環境を作ってインストールする
base 環境に直接入れず、解析用の環境を分けます。ツールごとに要求する Python や Java の版が異なるため、まとめて入れると後から衝突します。環境を分けておけば、壊れたときにその環境だけ作り直せます。
bash
# rnaseq という名前の環境を作り、FastQC を入れる
conda create -n rnaseq fastqc
# 作った環境に入る
conda activate rnaseq
確認メッセージ Proceed ([y]/n)? が出たら y を入力します。既存の環境に追加したい場合は、その環境に入ってから conda install fastqc を実行します。
Solving environment の表示が長く続く場合、依存解決の総当たりに時間がかかっています。conda の代わりに mamba(同じ操作を高速に行う実装)を使うか、環境を新規に作り直すと収束が早くなります。4. 動作を確認する
bash
# バージョンが表示されればインストール成功
fastqc --version
# 実行ファイルの場所を確認(環境内を指していることを見る)
which fastqc
FastQC v0.12.1 のようにバージョンが返れば導入できています。which の出力が ~/miniconda3/envs/rnaseq/bin/fastqc のように環境内を指していれば、目的の環境の FastQC が呼ばれています。
実際の FASTQ ファイルで動かします。
bash
# 出力先を作ってから実行する(存在しないとエラーになる)
mkdir -p qc_result
fastqc sample.fastq.gz -o qc_result/
# 複数ファイルをまとめて、4並列で処理する
fastqc *.fastq.gz -o qc_result/ -t 4
qc_result/ に HTML レポートと ZIP が生成されます。レポートの読み方はクオリティチェック編で扱っています。
GUI を使う場合は引数なしで起動します。ただしサーバー上では画面転送の設定が必要になるため、コマンドラインでの実行を基本にしてください。
bash
fastqc
5. トラブルシューティング
| 症状 | 原因 | 対処 |
|---|---|---|
command not found: fastqc |
環境に入っていない | conda activate rnaseq を実行する |
PackagesNotFoundError |
チャンネルが未設定 | 手順2をやり直す |
| GUI が起動しない | Java が未導入 | conda install openjdk を実行する |
Skipping file ... と出て結果が空 |
ファイル名や拡張子が想定外 | 拡張子が .fastq / .fastq.gz か確認する |
Specified output directory does not exist |
出力先が未作成 | mkdir -p で先に作る |
Solving environment が終わらない |
依存解決に時間がかかっている | 環境を新規に作るか mamba を使う |
6. 注意点
- base 環境に入れない:base が壊れると Conda 全体の操作に影響します。解析用の環境を分けてください。
- チャンネルの順序を守る:conda-forge が bioconda より優先される並びにします。逆にすると依存解決に失敗することがあります。
- Windows では直接動かない:Bioconda は Linux と macOS が対象です。Windows では WSL2 上の Linux で作業します。
- 環境名を記録しておく:解析を再現する際に、どの環境で何を実行したかが必要になります。
conda env exportで構成を書き出しておくと確実です。
まとめ
- FastQC は Java を必要とするため、依存関係をまとめて解決できる Conda で導入する。
- チャンネルは bioconda → conda-forge の順で追加し、優先順位を strict にする。
- base ではなく解析用の環境を作ってインストールする。
- 確認は
fastqc --versionとwhich fastqcの2つで行う。 - 出力先ディレクトリは
-oで指定する前に作成しておく。
この手順の先で必要になること
この手順どおりに進めれば FastQC は入りますが、「なぜチャンネルを追加するのか」「conda の仮想環境は何を切り分けているのか」「fastqc と打つだけでなぜ起動するのか」までは踏み込んでいません。ここが分からないまま進むと、次のツールで別のエラーが出たときに同じ場所でまた止まります。逆にここを一度きちんと通せば、以降のインストールはほぼ自力で解決できるようになります。
『生命科学データ解析をはじめる前に読む本』は、Linux の基本から解析環境の構築までを順に扱う構成です。パスや権限、シェルの設定ファイルといった、環境構築でつまずく原因になる部分を土台から押さえられます。
![]()
関連記事
参考文献
- Grüning, B., Dale, R., Sjödin, A., Chapman, B. A., Rowe, J., Tomkins-Tinch, C. H., Valieris, R., & Köster, J. (2018). Bioconda: sustainable and comprehensive software distribution for the life sciences. Nature Methods, 15(7), 475–476. doi:10.1038/s41592-018-0046-7
- Andrews, S. (2010). FastQC: A quality control tool for high throughput sequence data. Babraham Bioinformatics. https://www.bioinformatics.babraham.ac.uk/projects/fastqc/


コメント