conda-forgeからのPythonパッケージインストール
conda-forgeからPythonパッケージをインストールする際、conda install -c conda-forge hogehoge
としたら要らないパッケージまでインストールされそうになったのでメモ。
2020/1/1 追記
このページは割と見られているようなので、公式のインストール手順ページへのリンクも貼っておく。
A brief introduction — conda-forge 2019.01 documentation
2019/11/3 追記
本記事の手順でパッケージインストールすると、conda-forge由来のパッケージと、anaconda由来のものが混じる。 パッケージによってはこれがバグ(おそらく実行時にエラーがでる)を引き起こすこともあるので注意。 例えば、geopandasなど。詳細は以下。 qiita.com
個人的には、conda-forge由来のパッケージを一つでも使う場合には、すべてのパッケージをconda-forge由来にしたほうがよいのではと感じる。 conda-forge onlyで困ったことはないし。
まとめ
conda config --append channels conda-forge
してからconda install hogehoge
する- 最初のコマンドは、初めてconda-forgeからインストールするときに必要。2回目以降は不要。
解決法
conda install -c conda-forge hogehoge
とするとconda-forge
チャンネルの優先度がデフォルトチャンネルよりも高くなってしまうことが原因ではないかと考えている。そこで、
conda config --append channels conda-forge
とコマンドを打ち、conda-forge
を低優先度でチャンネル追加したのちに
conda install hogehoge
とパッケージをインストールすればよい。
チャンネル追加は一度やれば十分なので、次からはinstall
コマンドを打つだけでよい。
実行例
不要なパッケージがインストールされそうになる例
PS C:\Users\USER> conda install -c conda-forge tensorboardx Solving environment: done ## Package Plan ## environment location: C:\Users\USER\Miniconda3 added / updated specs: - tensorboardx The following packages will be downloaded: package | build ---------------------------|----------------- certifi-2018.11.29 | py37_1000 144 KB conda-forge python-3.7.1 | hc182675_1000 20.9 MB conda-forge tensorboardx-1.6 | py_0 63 KB conda-forge cryptography-2.3.1 |py37h74b6da3_1000 506 KB conda-forge openssl-1.0.2p | hfa6e2cd_1002 5.4 MB conda-forge qt-5.9.6 | vc14h1e9a669_2 93.9 MB protobuf-3.6.1 |py37he025d50_1001 515 KB conda-forge conda-4.5.12 | py37_1000 660 KB conda-forge ca-certificates-2018.11.29 | ha4d7672_0 179 KB conda-forge libprotobuf-3.6.1 | h1a1b453_1000 2.0 MB conda-forge ------------------------------------------------------------ Total: 124.2 MB The following NEW packages will be INSTALLED: libprotobuf: 3.6.1-h1a1b453_1000 conda-forge protobuf: 3.6.1-py37he025d50_1001 conda-forge tensorboardx: 1.6-py_0 conda-forge The following packages will be UPDATED: ca-certificates: 2018.03.07-0 --> 2018.11.29-ha4d7672_0 conda-forge certifi: 2018.11.29-py37_0 --> 2018.11.29-py37_1000 conda-forge conda: 4.5.12-py37_0 --> 4.5.12-py37_1000 conda-forge The following packages will be DOWNGRADED: cryptography: 2.4.2-py37h7a1dbc1_0 --> 2.3.1-py37h74b6da3_1000 conda-forge openssl: 1.1.1a-he774522_0 --> 1.0.2p-hfa6e2cd_1002 conda-forge python: 3.7.2-h8c8aaf0_0 --> 3.7.1-hc182675_1000 conda-forge qt: 5.9.7-vc14h73c81de_0 --> 5.9.6-vc14h1e9a669_2 Proceed ([y]/n)? n
以下のやりかただと、最小限のインストールで済む
PS C:\Users\USER> conda config --append channels conda-forge >> PS C:\Users\USER> conda install tensorboardx Solving environment: done ## Package Plan ## environment location: C:\Users\USER\Miniconda3 added / updated specs: - tensorboardx The following packages will be downloaded: package | build ---------------------------|----------------- tensorboardx-1.6 | py_0 63 KB conda-forge libprotobuf-3.6.1 | h7bd577a_0 1.9 MB protobuf-3.6.1 | py37h33f27b4_0 514 KB ------------------------------------------------------------ Total: 2.5 MB The following NEW packages will be INSTALLED: libprotobuf: 3.6.1-h7bd577a_0 protobuf: 3.6.1-py37h33f27b4_0 tensorboardx: 1.6-py_0 conda-forge Proceed ([y]/n)?
参考
以下のページがよくまとまっている。 devlights.hatenablog.com