2016-10-04 7 views
26

私はコンドルフォージがパッケージを構築し、維持するために開始されたことを理解します。Anaconda Python環境を作成する際に、CondaまたはConda Forgeを使用する必要がありますか?

しかし、Anaconda Python環境を構築するとき、両方のリポジトリにパッケージが存在する場合、「conda-forge」と「conda install」のどちらを使用するのかをどのように知っていますか?たとえば、Djangoは 'conda install'と 'conda-forge'の両方でインストールできます。

どちらを使用しますか?それは問題ですか?

誰かが私にダミーのレッスンのための非常に簡単な「コンダフォージ」を与えることができますか?ドキュメントは非常に少ないです。

おかげ

答えて

49

短い答えは、私の経験では、一般的に、あなたが使用している問題ではない、ということです。

長い答え:

のでconda-forgeは、パッケージがインストールされて、そこから追加のチャネルです。この意味では、これは既定のチャネルや、パッケージを投稿した数百(何千もの)のチャネルのどれも特別なものではありません。 https://anaconda.orgにサインアップして自分のコンダパッケージをアップロードすると、自分のチャンネルを追加できます。

conda(クロスプラットフォームパッケージマネージャ)とconda-forge(パッケージチャネル)の間で、あなたの言い分からは分かりませんが、ここでは区別が必要です。 condaソフトウェアの主な開発者でもあるContinuum IOは、別々のパッケージチャネルを維持しています。これは、オプションを変更せずにconda install packagenameと入力したときのデフォルトです。

チャネルのオプションを変更するには2通りの方法があります。 1つは、パッケージをインストールするたびにチャネルを指定することです。

conda install -c some-channel packagename 

もちろん、パッケージはそのチャネルに存在する必要があります。同じチャネルを頻繁に使用している場合は、設定に追加することをお勧めします。あなたはchannels構成リストの一番上にチャネルsome-channelを追加する

conda config --add channels some-channel 

を書くことができます。これにより、some-channelに最高の優先順位が与えられます(複数のチャンネルに特定のパッケージがある場合に優先順位は(in part)が選択されます)。あなたが追加したチャンネルを削除したい場合

conda config --remove channels some-channel 

を書き込むことによって、あなたがそうすることができ、

conda config --append channels some-channel 

を入力し、リストの最後にチャンネルを追加し、最も低い優先度を与えるために、他のオプションについては

conda config -h 

を参照してください。言ったことの全てで

、代わりに連続で維持 defaultsチャネルの conda-forgeチャネルを使用するための4つの主要な理由があります: conda-forge かもしれ上

  1. パッケージより最新のものよりdefaultsチャンネル
  2. にあなたはこのようなとして依存関係を使用することを好むだろうdefaults
  3. からは利用できませんconda-forgeチャネル上のパッケージがあります。 0(conda-forgeから)mkldefaults)の代わりに。
  4. コンパイル済みのライブラリ(Cの拡張モジュールやCライブラリのラッパーなど)が必要なパッケージをインストールする場合は、のいずれかのパッケージをインストールした場合に互換性が失われる可能性が少なくなります。ベースCライブラリのバイナリ互換性のために単一のチャネル(ただし、このアドバイスは古くなったり、将来変更される可能性があります)。
+0

ありがとうございます!私には2つの関連する質問があります: 1.どのチャネルを試してみるのがいいのか、どのように知ることができますか? 2. 1つのチャネルで設定した後、どのようにデフォルトに戻すことができますか? – Daniel

+0

@ケニーあなたの最初の質問に答えるには、https://anaconda.orgであなたが望むパッケージを探して、パッケージを持っているチャンネルを見てください。あなたの2番目の質問に答える答えを編集しました。しかし、チャンネルから単一のパッケージをインストールしたい場合は、 'conda install -c some-channel packagename'コマンドを書く方が簡単かもしれません – darthbith

関連する問題