在Mac OS X上运行Virtualenv时遇到问题

15 投票
7 回答
10655 浏览
提问于 2025-04-15 19:51

我在Mac OS X 10.6.2上使用virtualenv-1.4.5(已经安装了Xcode)和Python 2.6。当我尝试运行一个虚拟环境时,出现了以下内容...

 Mac-Pro:pylonsdev paul$ virtualenv --no-site-packages -v trythis
Creating trythis/lib/python2.6
Symlinking Python bootstrap modules
  Symlinking trythis/lib/python2.6/_abcoll.pyc
  Symlinking trythis/lib/python2.6/_abcoll.pyo
  Symlinking trythis/lib/python2.6/abc.pyc
  Symlinking trythis/lib/python2.6/abc.pyo
  Symlinking trythis/lib/python2.6/codecs.pyc
  Symlinking trythis/lib/python2.6/codecs.pyo
  Symlinking trythis/lib/python2.6/config
  Symlinking trythis/lib/python2.6/copy_reg.pyc
  Symlinking trythis/lib/python2.6/copy_reg.pyo
  Symlinking trythis/lib/python2.6/encodings
  Symlinking trythis/lib/python2.6/fnmatch.pyc
  Symlinking trythis/lib/python2.6/fnmatch.pyo
  Symlinking trythis/lib/python2.6/genericpath.pyc
  Symlinking trythis/lib/python2.6/genericpath.pyo
  Symlinking trythis/lib/python2.6/lib-dynload
  Symlinking trythis/lib/python2.6/linecache.pyc
  Symlinking trythis/lib/python2.6/linecache.pyo
  Symlinking trythis/lib/python2.6/locale.pyc
  Symlinking trythis/lib/python2.6/locale.pyo
  Symlinking trythis/lib/python2.6/ntpath.pyc
  Symlinking trythis/lib/python2.6/ntpath.pyo
  Symlinking trythis/lib/python2.6/os.pyc
  Symlinking trythis/lib/python2.6/os.pyo
  Symlinking trythis/lib/python2.6/posixpath.pyc
  Symlinking trythis/lib/python2.6/posixpath.pyo
  Symlinking trythis/lib/python2.6/re.pyc
  Symlinking trythis/lib/python2.6/re.pyo
  Symlinking trythis/lib/python2.6/sre.pyc
  Symlinking trythis/lib/python2.6/sre.pyo
  Symlinking trythis/lib/python2.6/sre_compile.pyc
  Symlinking trythis/lib/python2.6/sre_compile.pyo
  Symlinking trythis/lib/python2.6/sre_constants.pyc
  Symlinking trythis/lib/python2.6/sre_constants.pyo
  Symlinking trythis/lib/python2.6/sre_parse.pyc
  Symlinking trythis/lib/python2.6/sre_parse.pyo
  Symlinking trythis/lib/python2.6/stat.pyc
  Symlinking trythis/lib/python2.6/stat.pyo
  Symlinking trythis/lib/python2.6/types.pyc
  Symlinking trythis/lib/python2.6/types.pyo
  Symlinking trythis/lib/python2.6/UserDict.pyc
  Symlinking trythis/lib/python2.6/UserDict.pyo
  Symlinking trythis/lib/python2.6/warnings.pyc
  Symlinking trythis/lib/python2.6/warnings.pyo
Creating trythis/lib/python2.6/site-packages
Writing trythis/lib/python2.6/site.py
Writing trythis/lib/python2.6/orig-prefix.txt
Writing trythis/lib/python2.6/no-global-site-packages.txt
Creating parent directories for trythis/include
Symlinking trythis/include/python2.6
Creating trythis/bin
New python executable in trythis/bin/python
Changed mode of trythis/bin/python to 0755
Symlinking trythis/.Python
Error [Errno 2] No such file or directory while executing command install_name_tool -change /System/Library/Frameworks/Pyt...ython @executable_path/../.Python trythis/bin/python
Could not call install_name_tool -- you must have Apple's development tools installed
Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 8, in <module>
    load_entry_point('virtualenv==1.4.5', 'console_scripts', 'virtualenv')()
  File "/Library/Python/2.6/site-packages/virtualenv-1.4.5-py2.6.egg/virtualenv.py", line 529, in main
    use_distribute=options.use_distribute)
  File "/Library/Python/2.6/site-packages/virtualenv-1.4.5-py2.6.egg/virtualenv.py", line 612, in create_environment
    site_packages=site_packages, clear=clear))
  File "/Library/Python/2.6/site-packages/virtualenv-1.4.5-py2.6.egg/virtualenv.py", line 806, in install_python
    py_executable])
  File "/Library/Python/2.6/site-packages/virtualenv-1.4.5-py2.6.egg/virtualenv.py", line 557, in call_subprocess
    cwd=cwd, env=env)
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py", line 595, in __init__
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py", line 1106, in _execute_child
OSError: [Errno 2] No such file or directory

有没有人能告诉我,为什么会出现这个错误呢?

7 个回答

12

从应用商店安装XCode来解决这个问题。我之前也遇到过同样的错误,安装了XCode,安装后运行了一下,现在virtualenv就可以正常用了。

24

你只需要安装Xcode的“命令行工具”,有两种方法可以做到:

1.- 如果你已经安装了Xcode,打开它,然后去“偏好设置” -> “下载”,选择“命令行工具”。

2.- 从这个链接下载“Xcode的命令行工具” .dmg文件:https://developer.apple.com/downloads

你可以通过App Store安装Xcode,但默认情况下它不会包含“命令行工具”。

1

在10.6版本的系统上,virtualenv也有一个bug。你可以查看这个关于virtualenv的讨论。即使你解决了当前遇到的问题,可能还会碰到另一个问题(我记得好像是找不到Python.framework的图像,但我不太记得了——当时遇到这个问题的时候没有做笔记)。

我对此做了一些调查,希望在Python 2.7中能解决这个问题——肯定有很多人知道这个问题,并且已经向CPython提交了修复补丁。

不过,似乎有些人在10.6.2和virtualenv 1.4.5的组合下得到了不错的结果……或者他们不再使用系统自带的Python,而是选择了macports或手动构建的方式。

撰写回答