【问题标题】:Running `pip` gives 'command not found' after successful Python homebrew install成功安装 Python 自制软件后,运行“pip”会给出“找不到命令”
【发布时间】:2016-02-03 20:00:26
【问题描述】:

作为序言,我对终端的态度很差,请多多包涵。

当我运行pip 时,我得到: zsh: command not found: pip

我已经用 brew 安装了 Python 2.7.11,它应该允许 pip 工作 当我运行echo $PATH 时,我得到了

/usr/local/sbin /Users/Nicolas/.composer/vendor/bin /Library/Frameworks/Python.framework/Versions/3.4/bin /usr/local/bin /usr/bin /bin /usr/sbin /sbin

我注意到 /usr/local/bin/ 在那里,我知道这是 brew 可执行文件链接到的地方

当我运行 which -a python 时,我得到了

/usr/local/bin/python
/usr/bin/python

所以——安装了两个 Python。我猜一个是本机 OSX,一个是自制软件安装。 当我运行which python 时,我得到了

/usr/local/bin/python

所以这是在调用 python 时运行的 python,对吗? 当我运行ls -l $(which python) 时,我得到了

lrwxr-xr-x  1 Nicolas  admin  34 Feb  3 14:26 /usr/local/bin/python -> ../Cellar/python/2.7.11/bin/python

我认为这就是问题所在;我注意到有一个 /python/2.7.11/libexec 文件夹...

我也试过brew unlink python && brew link python,但无济于事

当我尝试brew list python | grep pip 时,我得到了很长的结果列表

这可能是最重要的一个

/usr/local/Cellar/python/2.7.11/libexec/pip/pip/__init__.py

我不知道如何从这里开始......我认为这与 pip 在python/2.7.11/libexec 而不是python/2.7.11/bin 中有关

我对这些东西的大部分都不熟悉;我对终端的理解非常有限。我不知道如何从这里开始。感谢您提供任何和所有帮助,谢谢。

【问题讨论】:

  • 帮自己一个忙,下载 get-pip.py bootstrap.pypa.io/get-pip.py 并使用 python get-pip.py 安装它
  • 我把它下载到我的桌​​面上,在那里 cd'd 并运行 python get-pip.py... 我得到这个输出:要求已经是最新的:pip in /Library/Python/ 2.7/site-packages/pip-8.0.2-py2.7.egg 收集 setuptools 下载 setuptools-19.7-py2.py3-none-any.whl (472kB) 100% |███████████ █████████████████████| 475kB 960kB/s 安装收集的软件包:setuptools 成功安装 setuptools-19.7 现在当我运行 'pip' 我仍然得到同样的错误(找不到命令)
  • which -a pip 输出什么?
  • /usr/bin/python -m pip/usr/local/bin/python -m pip 怎么样
  • 我不明白——那些命令?当我尝试运行第一个时,我得到 Usage: /usr/bin/python -m pip [options] 后跟指令......它似乎不接受命令的任何参数。当我运行 /usr/bin/python -m pip -v 它给我的输出与 /usr/bin/python -m pip 相同

标签: python terminal pip homebrew


【解决方案1】:

我自己在 OS X 上遇到了这个问题。就我而言,我最后列出了 /usr/local/bin,发现我有来自pip2pip2.7pip3pip3.6。我缺少的是来自pip 的链接。我不知道这是否只是新标准的一部分,或者我是否遗漏了一些可以选择两者之一的东西,或者同时安装了 Python 2 和 Python 3 是否意味着我没有得到简单的 @987654326 @ 命令。无论哪种方式,运行 brew doctor 都没有发现或解决任何问题。

在这种情况下,只运行pip3pip2(而不是pip)似乎对我有用。就我而言,我运行了pip3,一切都按预期安装和运行。

【讨论】:

  • 根据@Steve 的这个答案快速修复 - 做了cd /usr/local/bin,找到了pip3 的条目,注意到pip 丢失了,(在该目录中)只需将文件复制到@987654335 @ 一切正常!感谢领导! cp pip3 pip
【解决方案2】:

我的背景

我遇到了同样的问题,我认为它可能是在升级到 OSX 10.11 (El Capitan) 后出现的。在尝试运行 pip 时,我得到了 -bash: pip: command not found 我还尝试了 python -m pip 也不起作用(no module found)。尝试通过 Homebrew 取消链接并重新链接 python 不起作用。

修复

我能够通过 Homebrew 完全卸载并重新安装 python 来解决问题。

brew uninstall python && brew install python

如果您也想删除旧版本的 python,请使用

brew uninstall --force python && brew install python

我现有的 pip 安装没有受到影响,并且在我运行 pip freeze 时仍然列出。重新安装后,二进制文件现在符号链接到 /usr/local/bin/pip,以前不存在。奇怪的是,/usr/local/Cellar/python/2.7.11/bin/pip 中的实际二进制文件在重新安装之前也不存在。

【讨论】:

  • 如果 brew 抱怨依赖关系,你可能不得不做brew uninstall --ignore-dependencies --force python && brew install python。可以忽略依赖项,因为您正在重新安装。您可能还需要重新链接:brew unlink python && brew link python
猜你喜欢
  • 1970-01-01
  • 2016-06-24
  • 1970-01-01
  • 1970-01-01
  • 2023-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多