conda installを使用する時、pipの代わりにcondaコマンドを使ってインストールするんだなーというのはなんとなくわかっていたのですが、よくtensorflowやpytorchをインストールする際の公式の手順では$conda install -c Anaconda tensorflow-gpu
のような-cオプションがついています。
今回はこの-cオプションの意味について解説していこうと思います。
conda install -c の意味について
まず、この-cとはフルスペルだと--channelになります。
では、channelとはいったいどのチャネルのことを表しているのかというと、パッケージの検索先を表しています。リポジトリとも言います。
本来、パッケージをダウンロードする際にはデフォルトでどのサイトからパッケージをダウンロードするのかが設定されています。
そこで、デフォルトのサイトで見つからなかったときにほかのサイトを見て回り、見つかったらダウンロード+インストールを開始するという流れになっています。
しかし、opencvなどは設置先によって登録されているパッケージ名が違ったりするのでこのコマンドで確実にダウンロードできるよ!というリファレンスを示す意味でも-cオプションで確実にダウンロード元を示してあげるということですね。
もちろんURLをしっかりと打ち込んでもいいですが、事前にcondaに登録されているものであればエイリアスを指定してあげるだけでそこを探しに行ってくれます。例えば、-c Anaconda の場合はhttp://conda.anaconda.org/になっていたかと思います。(間違っていたらすいません)
何も指定してあげなくてもhttp://conda.anaconda.org/を使う設定になっています。
Anacondaパッケージの注意点
ここで一つAnacondaパッケージに関して注意点があります。
2020/4/30の発表によると大規模な商用利用に関しては有償となっています。個人レベルであればいろいろとそろっているので何も気にしなくてもいいと思いますが、大企業のシステムなどで使用する場合は条件に目を通したほうがいいと思います。
conda forgeパッケージ
-c conda-forgeで利用できるパッケージは有償化の影響を受けていません。
conda-fergeではデフォルトで見つからないパッケージがたいてい揃うといわれています。
毎回-c conda-forgeと入力するのもめんどくさいので、デフォルトに追加してしまうのも一つの手かと思います。
チャネルの追加方法
追加方法はconda configを使います。
conda-forgeを追加する場合は以下のコマンドを入力します。
$conda config --append channels conda-forge
チャネルの追加から確認までの一連の流れは以下です。
~$ conda config --append channels conda-forge
~$ conda config --get channels
--add channels 'conda-forge' # lowest priority
--add channels 'defaults' # highest priority
以上、conda install -c について備忘録でした。

コメント