错误“virtualenv:找不到命令”但安装位置在 PYTHONPATH
Posted
技术标签:
【中文标题】错误“virtualenv:找不到命令”但安装位置在 PYTHONPATH【英文标题】:Error "virtualenv : command not found" but install location is in PYTHONPATH 【发布时间】:2017-02-19 06:00:46 【问题描述】:在过去的 2 天里,这让我发疯了。
我使用pip install virtualenv
在我的 Macbook 上安装了 virtualenv。
但是当我尝试使用virtualenv venv
创建一个新的 virtualenv 时,我收到错误消息“virtualenv : command not found”。
我使用了pip show virtualenv
,安装位置是“位置:/usr/local/lib/python2.7/site-packages”,但我不知道可执行文件在哪里。我尝试了几十个其他类似的帖子,但这些解决方案对我不起作用。
有什么想法可能会出错吗?
【问题讨论】:
你确定你的python路径是正确的吗?你是用系统安装的python,还是自己下载的? Pythonpath 不会影响从命令行执行程序... 你可以试试python -m venv
吗?
@cricket_007 :我过去 2 年一直在使用它,所以我不确定,但我认为它是默认安装。当我做which python
时,我得到“/usr/local/bin/python”
我通过自制软件安装了 python。当我做pip install virtualenv
时,它在那里创建了它。
【参考方案1】:
我能想到的唯一可行的方法(在@Gator_Python 的帮助下是做python -m virtualenv venv
。这会创建虚拟环境并按预期工作。
我安装了自定义 python,也许这就是默认方法对我不起作用的原因。
【讨论】:
适用于 El Capitan 上的官方 Python3 下载。谢谢。 这也是我降落的大致位置。最终为我的.bashrc
添加了一个别名,这样我就可以节省一些打字时间。
同一答案的更详细版本:***.com/a/39977369/1357094
我做了 python3 -m virtualenv venv 所以 python3 而不是 python 因为我都安装了,可能对其他菜鸟有用...【参考方案2】:
在 macOS Mojave 上
首先检查python是否在路径中。python --version
第二次检查 pip 是否安装。pip --version
如果没有安装。brew install pip
第三次安装virtualenvsudo -H pip install virtualenv
【讨论】:
【参考方案3】:正如 cmets 中所述,您已经在预期的环境中正确安装了 virtualenv 模块,因为 python -m venv
允许您创建 virtualenv。
virtualenv
不是一个可识别的命令的事实是 virtualenv.py
不在您的系统路径中和/或不可执行的结果。根本原因可能是过时的 distutils 或 setuptools。
您应该尝试定位 virtualenv.py
文件,确保它是可执行的 (chmod +x
) 并且它的位置在您的系统 PATH 中。在我的系统上,virtualenv.py
位于 ../Pythonx.x/Scripts
文件夹中,但这对您来说可能有所不同。
【讨论】:
第一个解决方案对我有用,但第二个解决方案失败了,尽管在~/lib/python/site-packages
中找到了virtualenv
,将此目录添加到PATH
,并使virtualenv.py
可执行。我在 macOS Mojave 上使用 Python 3.6.7 和 pip3。
在 macOS Mojave 上你可以做 sudo -H pip install virtualenv
【参考方案4】:
对于 Python 3
python3 -m virtualenv venv
【讨论】:
【参考方案5】:可能是您正在使用 Anaconda 包管理器吗?如果是这样,那么它有它自己的虚拟环境系统,您设置如下:
conda create --name venv
【讨论】:
【参考方案6】:我也遇到了同样的问题(尽管在 ubuntu 上),一个简单的解决方案是不要使用 pip install virtualenv
,而是在推荐前加上“sudo”。
稍作检查即可揭示此修复背后的原因:
pip install virtualenv
尝试将可执行文件放在/usr/local/bin
下,以便可以从命令行调用它,但失败了,因为只有 root 对该目录有写权限
另一种选择是pip install --user virtualenv
,这里有一些进一步的阅读1,2
【讨论】:
【参考方案7】:在 Windows 上遇到了同样的问题。找不到命令,并且在 pip show 给出的目录中找不到可执行文件。 通过将“C:\UsersMy User\AppData\Roaming\Python\Python39\Scripts”添加到 PATH 环境变量来修复它。
【讨论】:
【参考方案8】:我成功地在 /usr/local/bin 中手动创建了一个指向 location/virtualenv.py 的链接,将其命名为 virtualenv 并在文件上添加 +x 属性
➜ ~ pip show virtualenv
Name: virtualenv
Version: 16.6.0
Summary: Virtual Python Environment builder
Home-page: https://virtualenv.pypa.io/
Author: Ian Bicking
Author-email: ianb@colorstudy.com
License: MIT
Location: /home/prsadev/.local/lib/python2.7/site-packages
Requires:
~ chmod +x /home/prsadev/.local/lib/python2.7/site-packages/virtualenv.py
~ sudo ln -sf /home/prsadev/.local/lib/python2.7/site-packages/virtualenv.py /usr/local/bin/virtualenv
【讨论】:
【参考方案9】:当我尝试运行我的“venv”时,我尝试在一个随机位置安装 virtualenv,并在 UBUNTU 机器上遇到了同样的问题。解决我的问题的是:-
$virtualenv -p python3 venv
另外,不要使用 $activate
尝试:-
$source activate
如果您查看激活脚本(或 $cat activate
),您会在评论中找到相同的内容。
【讨论】:
【参考方案10】:从https://pypi.org/project/virtualenv安装virtualenv
python -m pip install --user virtualenv
sudo /usr/bin/easy_install virtualenv
【讨论】:
【参考方案11】:这解决了我的类似问题!
您需要在how to create a virtual environement with python X.X.X
上在线查看(将 x.x.x 替换为您的 python 版本)
我的是 python 3.4.3 所以下面是我应该如何处理它:
sudo python3 -m venv aramisvenv
【讨论】:
以上是关于错误“virtualenv:找不到命令”但安装位置在 PYTHONPATH的主要内容,如果未能解决你的问题,请参考以下文章