LoginSignup
6
5

More than 3 years have passed since last update.

pyenvでcondaを入れてActivateできない問題の解決法

Last updated at Posted at 2020-01-21

参考

こちらがとても参考になりました!

はじめに(結論)

結論から言うとpyenvよりまえにcondaを読み込むように環境パスを設定すればいい。

rcファイルに追記
# -------------------------------------------------------------------------
# pyenv
# -------------------------------------------------------------------------
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if command -v pyenv 1>/dev/null 2>&1; then
  eval "$(pyenv init -)"
fi

# -------------------------------------------------------------------------
# conda
# -------------------------------------------------------------------------
export PATH="$PYENV_ROOT/versions/コンダのバージョン/bin:$PATH"            

pyenv globalを変更しても.pyenv/versions/conda/binにあるpythonがpyenvより先に呼び出されるせいで変更がで適用されない

あらすじ

pyenvでcondaをいれて

pyenv install condaバージョン

pyenvでcondaをグローバルにするために

pyenv global condaバージョン

condaで環境つくり

conda -n 環境名

つくった仮想環境をアクティベートしたい
baseからつくった環境に切り替えたい

現在のアクティブな環境を確認
conda env list

# conda environments:
#
base              *  /home/username/.pyenv/versions/anaconda3-2019.10
create_new_env       /home/username/.pyenv/versions/anaconda3-2019.10/envs/create_new_env

切り替えようとする

conda activate 環境名

こんなエラーがでる

Usage: pyenv which <command>

pyenvにもactivateコマンドがあるので使い方が違うよ!と怒られる

そこでpyenvよりも先にcondaが読み込まれるようにする

rcファイルに追記
export PATH="$PYENV_ROOT/versions/anaconda3-バージョン/bin:$PATH"              

PATHを確認する

echo $PATH
/home/username/.pyenv/versions/anaconda3-2019.10/bin:/home/username/.pyenv/shims:/home/username/.pyenv/bin

このようになっていればOK

もう一度環境切り替えコマンドを打てば上手くいく

好きなコマンドで切り替える
conda activate 環境名
source activate 環境名

やはりconda

6
5
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
6
5