LoginSignup
3
2

More than 3 years have passed since last update.

MSYS2からAnacondaのcondaコマンドを使用できるようにする

Last updated at Posted at 2019-04-14

condaのバージョンが4.6.11以降だとうまくいきません!

投稿動機は問題解決のためにいったんアウトプットしようと思ったためです。1

2019/8/13 追記: conda 4.7.10での動作確認をいたしました

早速本題。まず.bash_profileに以下を記述してAnacondaのPATHを通し、conda activateコマンドを使用してみます。
((Anacondaまでのパス)は各自のパスに置き換えて考えてください。)

.bash_profile
if [ -d "(Anacondaまでのパス)/Scripts" ] ; then
  PATH="${PATH}:(Anacondaまでのパス)/Scripts"
fi
bash
$ conda activate

するとバージョンによって違いはあるのかもしれませんが、以下に示す親切なエラー文が出てきます。

バージョンが4.5.12の場合
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
If your shell is Bash or a Bourne variant, enable conda for the current user with

    $ echo ". (Anacondaまでのパス)/etc/profile.d/conda.sh" >> ~/.bashrc

or, for all users, enable conda with

    $ sudo ln -s (Anacondaまでのパス)/etc/profile.d/conda.sh /etc/profile.d/conda.sh

The options above will permanently enable the 'conda' command, but they do NOT
put conda's base (root) environment on PATH.  To do so, run

    $ conda activate

in your terminal, or to put the base environment on PATH permanently, run

    $ echo "conda activate" >> ~/.bashrc

Previous to conda 4.4, the recommended way to activate conda was to modify PATH in
your ~/.bashrc file.  You should manually remove the line that looks like

    export PATH="(Anacondaまでのパス)/bin:$PATH"

^^^ The above line should NO LONGER be in your ~/.bashrc file! ^^^

このエラー文から以下のことがわかります。

  • . (Anacondaまでのパス)/etc/profile.d/conda.shを実行すると現在のユーザーでcondaコマンドが使えるようになります
  • conda activatebase環境を立ち上げましょう
  • バージョンが4.4以前ではパスを通すようにしていましたが現在は非推奨です

早速.bash_profileを書き換えパスを通すのをやめてconda.shが実行されるように書き換えましょう。

.bash_profile
# 以下消す
# if [ -d "(Anacondaまでのパス)/Scripts" ] ; then
#   PATH="${PATH}:(Anacondaまでのパス)/Scripts"
# fi
# ここまで消す

. (Anacondaまでのパス)/etc/profile.d/conda.sh
conda activate base

シェルを立ち上げなおします。

(base)
$

こんな感じになればbase環境を立ち上げることに成功しています。これでpythonコマンドも使用することができるようになりました。

4.6.11以降で起きている問題

4.6.11以降、MSYS2では

$ conda activate
CommandNotFoundError: No command 'conda conda'.

というエラーが発生しコマンドが使用できないです。

Anaconda Promptは使えますがとても不便です...

リリースノートによるとPowershellで使用できるようにしたそうなので確実にそれが問題な気がしますけどね...ちなみに$ powersell conda activateとか打っても同様のエラーが出ます。

何かわかり次第追記していこうと思っています。

追記: 上記に示す通り、現在はバグが修正され使用可能になっています!


  1. teratailで質問してみたのですがまだ解決できてないです...うーん 解決しました! 

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2