尽管我做了各种尝试,但还是无法让virtualenv工作。我在MAC OS X上使用以下方法安装virtualenv:

pip install virtualenv

并将PATH添加到我的.bash_profile中。每次我尝试运行virtualenv命令时,它都会返回:

-bash: virtualenv: command not found

每次我运行pip install virtualenv时,它都会返回:

Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

我知道在mac中,virtualenv应该正确安装

/usr/local/bin

virtualenv确实安装在/usr/local/bin中,但每当我试图运行virtualenv命令时,都找不到该命令。我还尝试在/usr/local/bin目录下运行virtualenv命令,它给了我相同的结果:

-bash: virtualenv: command not found

这些是我添加到.bash_profile中的路径

export PATH=$PATH:/usr/local/bin
export PATH=$PATH:/usr/local/bin/python
export PATH=$PATH:/Library/Framework/Python.framework/Version/2.7/lib/site-packages

有什么解决办法吗?为什么会这样呢?


当前回答

我在Mac OS X El Capitan上也遇到了同样的问题。

当我像sudo pip3那样安装virtualenv时,我的命令行下没有virtualenv。

我通过以下步骤解决了这个问题:

卸载以前的安装。 在安装virtualenv之前,通过调用sudo su切换到超级用户帐户 通过调用pip3 Install virtualenv来安装virtualenv 最后,您应该能够从用户和超级用户帐户访问virtualenv。

其他回答

我认为您的问题可以使用一个简单的符号链接来解决,但是您创建了指向错误文件的符号链接。据我所知,virtualenv安装在/Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv,(你可以为你的Python版本更改数字),因此创建符号链接的命令应该是:

ln -s /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv /usr/local/bin/virtualenv

在我的例子中,我运行pip show virtualenv来获取有关virtualenv包的信息。我将看起来与此类似,并将显示包的位置:

user@machine:~$ pip show virtualenv
Name: virtualenv
Version: 16.2.0
Summary: Virtual Python Environment builder
Home-page: https://virtualenv.pypa.io/
Author: Ian Bicking
Author-email: ianb@colorstudy.com
License: MIT
Location: /home/user/.local/lib/python3.6/site-packages
Requires: setuptools

从那里获取location的部分到.local部分,在本例中是/home/user/.local/。virtualenv命令可以在/home/user/.local/bin/virtualenv目录下找到。

然后可以运行/home/user/之类的命令。本地/ bin / virtualenv newvirtualenv。

我很长一段时间都有同样的问题。 我通过运行这两个命令来解决这个问题,第一个是安装,第二个是激活env:

python3 -m pip install virtualenv
python3 -m virtualenv yourenvname

请注意,我使用的是python3,如果python3失败,您可以将其更改为python。 谢谢。

我也遇到过同样的问题,我是这样解决的:

The issue occurred to me because I installed virtualenv via pip as a regular user (not root). pip installed the packages into the directory ~/.local/lib/pythonX.X/site-packages When I ran pip as root or with admin privileges (sudo), it installed packages in /usr/lib/pythonX.X/dist-packages. This path might be different for you. virtualenv command gets recognized only in the second scenario So, to solve the issue, do pip uninstall virtualenv and then reinstall it with sudo pip install virtualenv (or install as root)

在Mac

> pip3安装virtualenv > python3 -m virtualenv [venv_name_you_want]

Q. virtualenv未找到 安装virtualenv后,pip3列表中存在virtualenv。但当使用“virtualenv [venv_name]”命令时,返回“virtualenv not found”。

答:因为virtualenv是作为一个模块安装在python3中的。没有像python3一样安装在“/usr/bin/..”路径下。因此在本例中,我们可以使用"python3 -m virtualenv [venv_name]"。

我们可以看到重试“pip3 install virtualenv”命令的位置。然后zsh或你的shell告诉我们这个信息。

默认为用户安装,因为正常的站点包是不可写的 需求已经满足:virtualenv in /Users/[your-usr-name-here]/Library/Python/3.8/lib/ Python/ site-packages (20.16.5) 需求已经满足:filelock<4,>=3.4.1 in /Users/[your-usr-name-here]/Library/Python/3.8/lib/ Python/ site-packages (from virtualenv)(3.8.0)…