【问题标题】:Unable to run virtualenv on OSX?无法在 OSX 上运行 virtualenv?
【发布时间】:2012-10-31 11:03:19
【问题描述】:

sudo virtualenv foo

New python executable in foo/bin/python
Installing setuptools.............done.
Installing pip....
  Complete output from command /private/tmp/foo/bin/python -x /private/tmp/foo/bin/easy_install /Library/Python/2.7/...ort/pip-1.2.1.tar.gz:
  /private/tmp/foo/bin/python: can't open file '/private/tmp/foo/bin/easy_install': [Errno 2] No such file or directory
----------------------------------------
...Installing pip...done.
Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 8, in <module>
    load_entry_point('virtualenv==1.8.2', 'console_scripts', 'virtualenv')()
  File "/Library/Python/2.7/site-packages/virtualenv.py", line 942, in main
    never_download=options.never_download)
  File "/Library/Python/2.7/site-packages/virtualenv.py", line 1054, in create_environment
    install_pip(py_executable, search_dirs=search_dirs, never_download=never_download)
  File "/Library/Python/2.7/site-packages/virtualenv.py", line 655, in install_pip
    filter_stdout=_filter_setup)
  File "/Library/Python/2.7/site-packages/virtualenv.py", line 1020, in call_subprocess
    % (cmd_desc, proc.returncode))
OSError: Command /private/tmp/foo/bin/python -x /private/tmp/foo/bin/easy_install /Library/Python/2.7/...ort/pip-1.2.1.tar.gz failed with error code 2

virtualenv foo

New python executable in foo/bin/python
Installing setuptools.............................
  Complete output from command /private/tmp/foo/bin/python -c "#!python
\"\"\"Bootstra...sys.argv[1:])






" /Library/Python/2.7/...ols-0.6c11-py2.7.egg:
  error: can't create or remove files in install directory

The following error occurred while trying to add or remove files in the
installation directory:

    [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/test-easy-install-1712.write-test'

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /Library/Python/2.7/site-packages/

Perhaps your account does not have write access to this directory?  If the
installation directory is a system-owned directory, you may need to sign in
as the administrator or "root" account.  If you do not have administrative
access to this machine, you may wish to choose a different installation
directory, preferably one that is listed in your PYTHONPATH environment
variable.

For information on other options, you may wish to consult the
documentation at:

  http://peak.telecommunity.com/EasyInstall.html

Please make the appropriate changes for your system and try again.

----------------------------------------
...Installing setuptools...done.
Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 8, in <module>
    load_entry_point('virtualenv==1.8.2', 'console_scripts', 'virtualenv')()
  File "/Library/Python/2.7/site-packages/virtualenv.py", line 942, in main
    never_download=options.never_download)
  File "/Library/Python/2.7/site-packages/virtualenv.py", line 1052, in create_environment
    search_dirs=search_dirs, never_download=never_download)
  File "/Library/Python/2.7/site-packages/virtualenv.py", line 599, in install_setuptools
    search_dirs=search_dirs, never_download=never_download)
  File "/Library/Python/2.7/site-packages/virtualenv.py", line 571, in _install_req
    cwd=cwd)
  File "/Library/Python/2.7/site-packages/virtualenv.py", line 1020, in call_subprocess
    % (cmd_desc, proc.returncode))
OSError: Command /private/tmp/foo/bin/python -c "#!python
\"\"\"Bootstra...sys.argv[1:])






" /Library/Python/2.7/...ols-0.6c11-py2.7.egg failed with error code 1

我正在运行 Python 2.7.3,除了 OSX Mountain Lion 上默认的 pip 和 virtualenv 之外,没有安装任何包。

【问题讨论】:

    标签: python macos python-2.7 virtualenv pip


    【解决方案1】:

    您的 Python 安装不知何故搞砸了。

    首先,运行sudo virtualenv foo 没有任何意义。 virtualenv 的全部意义在于,您永远不需要 root 访问权限来安装软件包。您将永远需要 sudo 来使用 virtualenv。

    其次,/Library/Python/2.7/site-packages/virtualenv.py 默认不包含在 Mountain Lion 中。那里已经安装了一些东西,所以当你说“除了默认情况下没有安装任何包”时,你错了。根据您的安装方式,它可能安装错误。

    似乎即使您正在创建一个 virtualenv,它也试图将软件包安装到/Library/Python/2.7/site-packages/,这应该是不可能的。莫非是你用sudo easy_install安装virtualenv,还是手动把一些包放到/Library/Python/2.7/site-packages/里面?

    我建议取消并卸载你安装的任何东西,让你的系统恢复到标准的 Mac OS X 设置,然后使用 virtualenv-burrito 代替,这是一个将安装 virtualenv 和无需思考即可为您点子:https://github.com/brainsik/virtualenv-burrito

    【讨论】:

    • 我非常感谢你让我注意到墨西哥卷饼!
    • 哇。那很简单。谢谢!
    【解决方案2】:

    哎呀,忘了写我对这个问题的答案。

    我的 Python 目录有一大堆权限和包相关的问题;最后进行了完全卸载,然后从 Python.org 安装了最新的。

    从那以后一直工作良好。

    【讨论】:

    • 感谢您的跟进。我也这样做了,而且进展顺利
    猜你喜欢
    • 2021-11-05
    • 2012-04-03
    • 2014-11-19
    • 2013-08-27
    • 1970-01-01
    • 2012-08-28
    • 2016-02-16
    • 2013-03-16
    • 1970-01-01
    相关资源
    最近更新 更多