未找到Pip包 - Brewed Python

时间:2013-01-31 11:34:14

标签: python macos virtualenv pip homebrew

在Mac上运行与HomeBrew一起安装的Python 2.7.3。

使用PIP安装了几个软件包,包括virtualenv。 (以virtualenv为例,但没有包可用。)

当我尝试在终端中运行它们时,它失败如下:

$ virtualenv venv --distribute
-bash: virtualenv: command not found

或者:

$ python virtualenv.py venv
/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: can't open file 'virtualenv.py': [Errno 2] No such file or directory

其他一些可能有用的要点:

$ which python
/usr/local/bin/python
$ pip freeze
MySQL-python==1.2.4
...
virtualenv==1.8.4
$ echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
$ echo $PYTHONPATH
/usr/local/lib/python2.7/site-packages:

默认情况下,$ PYTHONPATH为空,我在.bash_profile中更改了它(没有帮助)。 VirtualEnv确实存在于该路径中。 我也尝试将此路径添加到.profile $路径,但这也没有帮助,所以我删除了它。

HomeBrew Python page上似乎与此有些关系,但我是Python新手,无法弄明白。已经花了几个小时没有获得任何收获的DuckDuckGo。

非常感谢任何帮助。

编辑:已更新以反映实际使用情况。

3 个答案:

答案 0 :(得分:34)

问题是我没有将Python添加到系统$ PATH。

在brew安装结束时,它表示(通过键入brew info python可查看):

Executable python scripts will be put in:  
   /usr/local/share/python
so you may want to put "/usr/local/share/python" in your PATH, too.

因此,只需打开.profile并粘贴它,所有包都可以工作。

非常感谢MistyM在Brew IRC频道指出这一点!

答案 1 :(得分:0)

如果您的系统未提供virtualenv.py命令,请下载virtualenv

curl -L -o virtualenv.py https://raw.github.com/pypa/virtualenv/master/virtualenv.py

首先创建你的virtualenv文件夹:

 python virtualenv.py venv # venv <-- name of the folder

你需要在shell中运行virtualenv的激活:

 . venv/bin/activate

 source venv/bin/activate

这修复了PYTHONPATH和PATH。每个shell会话执行一次此操作。然后 python 命令将神奇地工作:)

现在运行pip,包将安装在venv。

更多信息(免责声明,我是作者)http://opensourcehacker.com/2012/09/16/recommended-way-for-sudo-free-installation-of-python-software-with-virtualenv/

答案 2 :(得分:-1)

创建虚拟环境的快速工作流程

$ mkdir awesomeapp 
$cd awesomeapp
$virtualenv venv --distribute
New python executable in venv/bin/python
Installing distribute.........done.
Installing pip................done.
$source venv/bin/activate
(venv)$python

当您创建虚拟venv文件夹以存储路径时,您的CD就会进入您的目录。

当你看到(venv)

时,你现在会活跃起来