web-dev-qa-db-ja.com

pipがhomebrewで機能しないpython 2.7インストール

python homebrewを使用してインストールしましたが、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

どれも実行可能ではありません。

私は$ PATHをどこにポイントするか本当にわかりません。pip実行可能ファイルが見つからないためです。開くとき

/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

どれも実行可能ではありません。

私より多くの経験を持つ人の助けをいただければ幸いです。

編集:私はマルコが提案した手順を試しました:

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

  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

どのピップについても何も返されません

  1. ls -l $(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ファイルを含む)をいくつか返します

15
YoungPadawan

通常、homebrewformula/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"

次のように入力して、OSXでpythonsが何であるかを確認します。

which -a python

python /usr/bin/(Apple python)]に1つと、Homebrew pythonである/usr/local/bin/に1つあります。

which python

pythonは$PATHで最初に見つかり、pythonを呼び出すと実行されます。

実行可能ファイルの場所を知りたい場合は、次のように入力して表示します。

ls -l $(which python)

これは次のようになります。lrwxr-xr-x 1ルートホイール68 7 Mai 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

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

今、あなたは実行することができます

easy_install pip

あなたが進歩していることを願っています

19

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

brew unlink python && brew link python

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

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

5
GrayedFox

元の質問に対する実際の回答ではありませんが、Homebrewがインストールした_python/pip_が機能しなくなったために誰かがここに到着した場合(つまり、pythonがシステムを指しますpython =およびpipが見つからない場合)Homebrewがpythonをインストールおよびリンクする方法が最近(2017年夏)に変更された可能性があります。

解決策は、以下を_~/.bash_profile_または_~/.zshrc_に追加することです。

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

これにより、pythonがpythonのbrewバージョンを指すようになり、pipも得られます。_brew info python_および https://github.com/Homebrew/homebrew-core/issues/15746 詳細については

4
bjorgvin

デフォルトでは、Homebrewはbrew install pythonを介してpipを提供します。ただし、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/pipCellar/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 pythonbrewがリンクするファイルのリンクを確認します。

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

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

~/.bashrcファイルに。

成功した場合、pipは今すぐ機能するはずです。

2
kenorb