hombrew python 2.7 インストールで pip が動作しない

hombrew python 2.7 インストールで pip が動作しない

Homebrew を使用して Python をインストールしましたが、bash から pip を呼び出すことができません。.bash_profile を修正して /usr/local/bin/python と /usr local/share/python を含めるように試みましたが、効果はありませんでした。

bash コマンドを使用する場合:

find / -name 'pip'

得られる結果は次のとおりです:

/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip
/Users/Ivan/Library/Caches/pip
/Users/Ivan/Library/Logs/pip
/usr/local/Cellar/python/2.7.9/libexec/pip
/usr/local/Cellar/python/2.7.9/libexec/pip/pip
/usr/local/lib/python2.7/site-packages/pip

いずれも実行可能ファイルではありません。

pip実行ファイルが見つからないので、$PATHをどこに設定すればいいのかよくわかりません。

/usr/local/lib/python2.7/site-packages/pip

または

/usr/local/Cellar/python/2.7.9/libexec/pip/pip

次のファイルが見つかりました:

__init__.py         commands            operations
__init__.pyc        compat              pep425tags.py
__main__.py         download.py         pep425tags.pyc
__main__.pyc        download.pyc        req
_vendor             exceptions.py       status_codes.py
basecommand.py      exceptions.pyc      status_codes.pyc
basecommand.pyc     index.py            utils
baseparser.py       index.pyc           vcs
baseparser.pyc      locations.py        wheel.py
cmdoptions.py       locations.pyc       wheel.pyc
cmdoptions.pyc      models

いずれも実行可能ファイルではありません。

私よりも経験のある方のご助力があれば幸いです。

編集: Marco が提案した手順を試しました:

手順の結果は次のとおりです。

  1. echo $PATH はいくつかのディレクトリを表示します: /usr/local/bin:/usr/local/mysql/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin:/opt/X11/bin:/usr/local/mysql/bin

  2. which -a python は以下を返します: /usr/local/bin/python /usr/local/bin/python

-a pipに対しては何も返されない

  1. Python が返す値: /usr/local/bin/python

どのpipにも何も返されない

  1. ls -l $(which python) は単一のディレクトリを返します: lrwxr-xr-x 1 Ivan admin 33 17 May 08:59 /usr/local/bin/python -> ../Cellar/python/2.7.9/bin/python

ls -l $(which pip) は、私が元の投稿で示したPythonファイルを含むいくつかのファイルを返します。

答え1

通常、は を にhomebrewインストールし、 にリンクを配置します。formula/usr/local/Cellar/formula/usr/local/bin/formula

インストールした数式を使用するには、/usr/local/binが にあることを確認してください$PATH$PATHを表示するには、次のように入力します。

echo $PATH

/usr/local/binが にない場合は$PATH、この行をファイルの末尾に追加します~/.profile

export PATH="/usr/local/bin:$PATH"

次に、pythons次のように入力して、OSX で何が見つかったかを確認します。

which -a python

/usr/bin/に 1 つの Python (Apple Python)があり、/usr/local/bin/に Homebrew Python が 1 つあるはずです。

which python

$PATH は、 で最初に見つかった Pythonと、 を呼び出したときに実行されるPython を表示しますpython

実行ファイルがどこにあるか知りたい場合は、次のように入力して表示します。

ls -l $(which python)

これは次のようになります: lrwxr-xr-x 1 root wheel 68 7 May 13:22 python -> /usr/local/bin/python

これpipも同様に機能します。

これらの手順の結果を示していただければ、私たちはおそらくあなたをより簡単にサポートできるでしょう。

- アップデート -

/usr/local/bin/pythonにリンクしました/usr/local/Cellar/python/2.7.9/bin/python。->brew install python動作しました。

インストールされている場合は次のpipように入力して表示します。

brew list python | grep pip

君は見るべきだ

/usr/local/Cellar/python/2.7.9/bin/pip

そうでない場合は、 で実行されていないリンクがあるかどうかを確認しますbrew install。次のようなことを伝えます。

"Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local"

リンクを強制し、競合するファイルをすべて上書きするには:

brew link --overwrite python

削除されるすべてのファイルを一覧表示するには:

brew link --overwrite --dry-run python

** 標準のAppleはありません/usr/bin/python**

/usr/local/Cellar/python/2.7.9/bin/pythonからへのリンク/usr/bin/python

ln -s /usr/local/Cellar/python/2.7.9/bin/python /usr/bin/python

これは、 で始まるすべての Python スクリプトに必要です#!/usr/bin/python。特に、easy_installリンクがない場合には失敗します。

これで、実行できるようになりました

easy_install pip

進歩していることを願っています

答え2

brew が Python インストールを管理していて、pip がシンボリックリンクされていない場合 (つまり、「which pip」と入力しても結果が返されない場合)、ホーム ディレクトリからこれを試してください。

brew unlink python && brew link python

古い方法がまだ機能するかどうかはわかりません (私のマシンでは機能しませんでした)。

ここで、実際に 2.7 インストールを指していることを確認しますpip --version(ディレクトリ出力に Python のメジャー バージョンがリストされます)。

答え3

実際には元の質問に対する回答ではありませんが、Homebrew でインストールしたものpython/pipが動作しなくなった (つまり、pythonシステムの Python を指しているがpip見つからない) ためにここにたどり着いた人がいる場合、その理由は Homebrew が Python をインストールしてリンクする方法が最近 (2017 年夏) 変更されたことにある可能性があります。

~/.bash_profile解決策は、および/またはに以下を追加することです~/.zshrc

export PATH="$(brew --prefix)/opt/python/libexec/bin:$PATH"

これにより、pythonpythonのbrewバージョンがポイントされ、 も提供されます。のpip下にある注意点のセクションを参照してください。brew info pythonホームbrew のコアバージョンは、以下のとおりです。詳細については

答え4

デフォルトでは、Homebrew は 経由で pip を提供します: brew install python。ただし、その場合、Mac に 2 つの Python がインストールされますが、代わりに 経由でインストールすることもできます:

sudo easy_install pip

Python パッケージとともにインストールされているファイルを確認するには、次を試してください。

$ brew list python
/usr/local/Cellar/python/2.7.9/bin/pip
/usr/local/Cellar/python/2.7.9/bin/pip2
/usr/local/Cellar/python/2.7.9/bin/pip2.7
...

で構成されるはずですpip

インストール後、次の手順に従って、フォーミュラのインストール済みファイルをシンボリックリンクする必要があります。

brew link python

これにより、適切なシンボリックリンク(/usr/local/bin/pipを指すなどCellar/python/2.?.?/bin/pip)が作成されます。

権限の問題がある場合は、次の方法で修正できます。

sudo chgrp -R admin /usr/local /Library/Caches/Homebrew
sudo chmod -R g+w /usr/local /Library/Caches/Homebrew

ユーザーが管理者グループ ( id -Gn $USER) に属していることを確認します。

権限を修正した後、コマンドsudoを使用するときは使用しないでくださいbrew

次に、再度リンクします。

brew unlink python && brew link python

ドライランをテストするには、リンクを解除して実行し、リンクするbrew link -n pythonファイルのリンクを確認しますbrew

リンクが成功したら、PATH システム変数に次の行が含まれていることを確認します/usr/local。含まれていない場合は、以下を追加します。

export PATH=/usr/local/sbin:/usr/local/bin:$PATH

あなたのファイルに~/.bashrc

成功した場合、pipすぐに動作するはずです。

関連情報