停止 Homebrew Pip 将 virtualenv 安装在 /usr/local/share/。

4
我正在使用通过Homebrew安装的Python。过去,Homebrew安装的Python的pip会将模块放在/usr/local/share/python中,但是在最新版本的Homebrew中已经发生了变化,现在pip应该将它们放在/usr/local/bin中。但我的Python仍然将它们放在/usr/local/share/python中。

我已经升级了Homebrew,卸载了Python,重新安装了Python,并尝试使用pip安装virtualenv,但它仍然被放置在/usr/local/share/python中。当我尝试使用它时,会出现以下错误:

$ virtualenv
-bash: virtualenv: command not found

如何让它停止放入东西,就像现在应该做的那样?

我已经在一台机器上使其工作,但在另一台机器上未能实现,两者都使用相同的$PATH等,所以我感到很困惑。


它实际上去哪里了?你在第一段中说/usr/local/bin,而在第二段中说/usr/local/share - Mingyu
抱歉之前表述不够清晰 - 我现在尝试让它更加明确。 - Phil Gyford
1个回答

3
我也遇到了同样的问题,但我通过以下方法解决了这个问题(由DistributionNotFound error after upgrading pip建议),并且还需要额外执行一个命令:
  1. 进入/usr/local/lib/python2.7/site-packages并删除:
    • easy-install.pth
    • pip-1.2.1-py2.7.egg或其他版本的pip。
    • distribute-0.6.34-py2.7.egg或其他版本
  2. brew rm python
  3. brew uninstall python(由于某种原因,brew rm python 只会在Homebrew文件夹中删除python 2.7.3。而brew uninstall python允许我删除文件夹中最新的Python安装)
  4. brew install python
  5. pip install --upgrade virtualenv
如果你按照步骤进行,virtualenv应该已经安装到/usr/local/bin。
* 如果您安装了Macvim,则可能会崩溃。只需使用brew install macvim --override-system-vim重新安装即可,一切都会正常工作。

太棒了,谢谢alwc!我实际上不理解这为什么能解决问题......但它有效。 - Phil Gyford
@PhilGyford 我的理论是之前在Homebrew中安装了两个Python 2.7.x版本。当我们调用'pip install virtualenv'时,我们使用的是旧的Homebrew中的Python,它将路径指向'/usr/local/share/python'。很高兴它对你有效! - alwc

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接