如何将virtualenv添加到路径

时间:2013-03-16 19:35:35

标签: python macos path virtualenv pip

我试图找出无法找到使用virtualenv使用virtualenv安装的pip和/或homebrew包装器的原因。我认为这是因为它没有添加到我的路径中:

$ which virtualenv
$ 

$ virtualenv someDir
$ -bash: virtualenv: command not found

我使用homebrewvirtualenv使用pip安装了pip,没有任何问题。我尝试重新安装virtualenv,但这也不起作用。 我如何知道要添加到PATH的路径?只是virtualenv.py似乎安装的路径?这似乎是:

/usr/local/lib/python2.7/site-packages/virtualenv.py

我还找到了this guide,这表明了这一点:

$ ln -s ../Cellar/python/2.7/Frameworks/Python.framework/Versions/2.7/bin/virtualenv virtualenv

但是,它无法帮我运行virtualenv。我在Mac OSX 10.7.5(Lion)上。

9 个答案:

答案 0 :(得分:15)

似乎我自己是几乎所有“简单”安装程序的规则的例外。出于某种原因,它与路径有关:

我跑了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.

我在/etc/launchd.conf~/.bashrc中将其添加到我的PATH中并且看到了:

$ which virtualenv 

告诉我:

"/usr/local/share/python/virtualenv"

我仍然不知道为什么我无法在任何地方找到正确方向的指示?是pip install virtualenv应该添加到PATH本身吗?如果是这样,为什么不在我的系统上?为什么@bibhas明确告诉我这不是路径问题?

答案 1 :(得分:7)

pip install virtualenv

之后出现同样的问题

当我检查python ls -la /usr/local/bin/python时,我发现它与/Library/Frameworks/Python.framework/Versions/2.7/bin/python符号链接

当我在该目录中cd时,我还发现了virtualenv可执行文件和

通过

修正了它
  1. cd /Library/Frameworks/Python.framework/Versions/2.7/bin
  2. ln virtualenv /usr/local/bin/virtualenv
  3. 旁注:我也碰巧在/System/Library/Frameworks/Python.framework/Versions/2.7/bin

    中安装了python

    我相信这是OSX附带的那个

答案 2 :(得分:2)

在你的.bashrc中你需要:

export WORKON_HOME=~/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

答案 3 :(得分:1)

我通过以下方式解决了: 首先找到它位于/ usr / local / python3 然后我通过命令修复它: 在virtualenv / usr / local / bin / virtualenv

答案 4 :(得分:0)

此解决方案将为您提供另一种工具,可以同时使用和解决您的virtualenv问题。

使用pythonbrew。它的灵感来自于红宝石世界中的rvm,有助于管理系统中的pythons,还可以包装virtualenv命令来提供虚拟环境管理。我使用Mountain Lion进行开发,没有任何问题。更多详情(在我的博客上):http://stacktoheap.com/blog/2013/03/11/why-use-virtualenv-when-there-is-pythonbrew/

答案 5 :(得分:0)

我的想法是将你的virtualenv位置添加到BASH PATH

export PATH=$PATH:/usr/local/python2.7/bin 或者改变你的立场

答案 6 :(得分:0)

对于那些使用Python 2.7的人,我也遇到了这个问题,并通过简单地将以下行放入import socket, ssl context = ssl.SSLContext() context.verify_mode = ssl.CERT_REQUIRED context.check_hostname = True context.load_default_certs() s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ssl_sock = context.wrap_socket(s, server_hostname='www.verisign.com') ssl_sock.connect(('www.verisign.com', 443)) 文件(可能需要首先\etc\paths)来解决了这个问题:

$ sudo chmod

保存更改并开始新的终端会话。使用/Library/Frameworks/Python.framework/Versions/2.7/bin

进行检查

答案 7 :(得分:0)

(Mac / Linux专用) 因此,当我执行pip3安装--user --upgrade virtualenv时,我收到一条错误消息,告诉我PATH中没有Users / home / Library / Python / 3.7 / bin。所以我只是添加了它。

如果是在Mac上,则以下是对我有用的

vi〜/ .bash_profile

PATH =“ / Users / home / Library / Python / 3.7 / bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:$ {PATH}”

重新启动终端,然后输入virtualenv env,这应该可以完成。

答案 8 :(得分:-1)

/usr/local/lib/python2.7/site-packages中的模块由一个使用pkg_resources.load_entry_point来运行应用程序的简短脚本导入。实用程序脚本应位于/usr/local/bin