conda 4.2.13 MacOSX 10.12.1
私はpip
からanacondaを使って作られた新鮮な環境(仮想)にパッケージをインストールしようとしています。 アナコンダの文書では これは完全に問題ないと言っている。それはvirtualenvと同じ方法で行われます。
あなたがプログラムを置きたい環境をアクティブにして、そしてプログラムをpipインストールしてください...
私はこのようにAnancondaで空の環境を作りました:
conda create -n shrink_venv
有効にします。
source activate shrink_venv
それから私は自分のenv (shrink_venv)
で働いていることを端末で見ることができます。 pip
を使ってパッケージをインストールしようとすると問題が起こります。
(shrink_venv): pip install Pillow
Requirement already satisfied (use --upgrade to upgrade): Pillow in /Library/Python/2.7/site-packages
だから私はそれが要件がシステム全体のパッケージから満たされていると思うことがわかります。そのため、環境が正しく機能していないようです。ドキュメントに記載されているとおりではありません。私はここで何か悪いことをしていますか?
ちょっと注意してください、私はあなたがconda install
をパッケージのために使うことができることを知っています、しかし私はanacondaからのPillowに問題を抱えていた、それで私はpip
からそれを得たかったです。
which -a pip
の出力:
/usr/local/bin/pip
/Users/my_user/anaconda/bin/pip
**アップデート**これはかなり一般的な問題です。私が見つけたのは、conda envがPYTHONPATHとうまくいかないということです。 conda環境を使用している場合でも、システムは常にPYTHONPATHの場所を調べます。今、私はいつもconda環境を使うときにunset PYTHONPATH
を実行します、そしてそれははるかに良く働きます。私はMacにいます。
このような状況に遭遇する人にとっては、これが最も直接的な解決策であることがわかりました。
conda create -n venv_name
とsource activate venv_name
を実行します。ここで、venv_name
は仮想環境の名前です。
conda install pip
を実行してください。これはあなたのvenvディレクトリにpipをインストールします。
あなたのanacondaディレクトリを見つけて、そして実際のvenvフォルダを見つけてください。それは/anaconda/envs/venv_name/
のような場所にあるべきです。
/anaconda/envs/venv_name/bin/pip install package_name
を実行して新しいパッケージをインストールします。
これで、その仮想環境のpipを使ってパッケージを正常にインストールできます。
あなたがしなければならないのは開いているアナコンダプロンプトとタイプだけです
pip install package-name
それは自動的にanaconda環境にインストールする必要はありません
conda install package-name
Condaパッケージの中には残業サポートが不足しているかもしれないので、pipを使ってインストールすることが必要であり、これはそれをする一つの方法です
Anacondaにpipがインストールされている場合は、jupyterノートブックまたはanacondaにリンクされているpythonシェルで以下を実行できます。
pip.main(['install', 'package-name'])
Pipのバージョンをpip.__version__
で確認してください。バージョン10.x.x
以上の場合は、このコード行を使ってpythonパッケージをインストールしてください。
subprocess.check_call([sys.executable, '-m', 'pip', 'install', '--upgrade', 'package-name'])
あなたのjupyterノートブックでは、このようにしてセル内のpipを通してpythonパッケージをインストールすることができます。
!pip install package-name
またはあなたはanacondaに関連したあなたのpythonバージョンを使うことができる
!python3.6 -m pip install package-name
Conda環境を作成するときにpipを追加しなかった場合
conda create -n env_name pip
また、環境内にpipをインストールしませんでした
source activate env_name
conda install pip
それからあなたが手に入れた唯一のpipはシステムpipで、これはパッケージをグローバルにインストールします。
あなたが上で述べた手続きのどちらかをしたとしても、あなたがこの issue で見ることができるようにバスは、まだ未定義の種類の中のpipのふるまいです。
長い/home/username/anaconda/envs/env_name/bin/pip
を入力せずにconda環境内にインストールされたpipを確実に使用するために、シェル関数を書きました。
# Using pip to install packages inside conda environments.
cpip() {
ERROR_MSG="Not in a conda environment."
ERROR_MSG="$ERROR_MSG\nUse \`source activate ENV\`"
ERROR_MSG="$ERROR_MSG to enter a conda environment."
[ -z "$CONDA_DEFAULT_ENV" ] && echo "$ERROR_MSG" && return 1
ERROR_MSG='Pip not installed in current conda environment.'
ERROR_MSG="$ERROR_MSG\nUse \`conda install pip\`"
ERROR_MSG="$ERROR_MSG to install pip in current conda environment."
[ -e "$CONDA_PREFIX/bin/pip" ] || (echo "$ERROR_MSG" && return 2)
PIP="$CONDA_PREFIX/bin/pip"
"$PIP" "$@"
}
これがあなたに役立つことを願っています。
Pipを使ってcondaに少数のパッケージをインストールしたいのであれば、
Sudo $(which pip) install <instert_package_name>
私のために働いた。
説明
とにかく、which pip
はあなたがいる場所へのconda env pipパスを見つけるために非常に信頼できるようです。しかし、Sudo
を使うとき、これはパスをリダイレクトするか、そうでなければこれを壊すようです。
$(which pip)
を使用すると、これはSudo
または他のコマンドとは無関係に実行され、Linuxで/home/<username>/(mini)conda(3)/envs/<env_name>/pip
を実行するのと同じことになります。これは、$()
が別々に実行され、テキスト出力が外側のコマンドに追加されるためです。
私はanacondaにnon condaパッケージをインストールする際に問題に直面していました、私はここで最も好きな答えに従いました、そしてうまくいかなかった(おそらく私のanacondaはFディレクトリにありenv作成はCにありbinフォルダーは作成されませんでした、わかりませんが、うまくいきませんでした。
Anacondaのpipによると(anacondaのプロンプトで "conda list
"コマンドを使って見つけられる)、pipパッケージがインストールされていなかったので、ここで私がしたこと、pipを再度インストールしてからpipをインストールしました。
conda install pip
pip install see
see
は、conda以外のパッケージです。
windows OSを使用している場合はAnaconda Promptを開き、activate yourenvname
と入力します。
そして、あなたがMacかLinux OSを使っているなら、Terminalを開いてsource activate yourenvname
とタイプしてください。
ここでyourenvname
はあなたがpipパッケージをインストールしたいあなたの望ましい環境です
上記のコマンドを入力した後、あなたはあなたの環境名がbase
からあなたのタイプされた環境yourenvname
へコンソール出力で変更されるのを見る必要があります(これはあなたが今あなたの望む環境コンテキストにいることを意味します)
それからあなたがする必要があるのは普通のpip install
コマンドです、例えばpip install yourpackage
そうすることで、pipパッケージはあなたのConda環境にインストールされます。
この問題を次の方法で解決しました。
デフォルトのpipとしてconda以外のpipがあり、conda pythonがデフォルトのpythonである場合(以下を参照)
>which -a pip
/home/<user>/.local/bin/pip
/home/<user>/.conda/envs/newenv/bin/pip
/usr/bin/pip
>which -a python
/home/<user>/.conda/envs/newenv/bin/python
/usr/bin/python
次に、pip install <package>
を呼び出す代わりに、モジュールフラグ-m
をpythonとともに使用して、インストールにanaconda pythonを使用できます。
python -m pip install <package>
これにより、パッケージが(anaconda以外の)pipに関連付けられたライブラリディレクトリではなく、anacondaライブラリディレクトリにインストールされます。
上記のすべての回答は、主にvirtualenvの使用に基づいています。私はanaconda3を新しくインストールしただけで、virtualenvはインストールされていません。だから、私はvirtualenvを作成することを考えずにそれに代わるより良い方法を見つけました。
Linuxに多くのpipとpythonのバージョンがインストールされている場合は、最初に以下のコマンドを実行して、インストールされているすべてのpipパスを一覧表示します。
whereis pip
あなたは出力としてこのようなものを得るでしょう。
pip:/ usr/bin/pip
/home/prabhakar/anaconda3/bin/pip
/usr/share/man/man1/pip.1.gz
パッケージのインストールに使用したいpipのパスをコピーし、下記のコマンドでSudoが/home/prabhakar/anaconda3/bin/pip
を置き換えた後にそれを貼り付けます。
Sudo
/home/prabhakar/anaconda3/bin/pip
install<package-name>
これは私にとってかなりうまくいった。インストールに問題がある場合は、コメントしてください。
_のみ_ の場合condaをインストールしたいです。 PATH変数から他のpythonパスをすべて削除するだけです。
出発のみ
C:\ProgramData\Anaconda3
C:\ProgramData\Anaconda3\Scripts
C:\ProgramData\Anaconda3\Library\bin
これはあなたがpip install *
を使うことを可能にし、それはあなたのcondaインストールに直接インストールされます。
activate shrink_venv
だけでも同じように動作します。私は新しい環境を作成しようとしました、そして、私のcondaインストールは私が最初にソースを使うことを許しません。