Macでのvirtualenvのインストール

昨年の年末からMacにもPython環境を整えようと思い、MacPythonはインストールしていたものの、それ以外の環境は整えてませんでした。
そんなわけでまずはvirtualenvからインストール。
これのインストールはウノウラボのsakatoku氏の記事*1やIan Lewis氏のブログ*2を参考にしてもらえれば十分わかると思うのでそちらを参照してください。

今回設定中に詰まったのはmkvirturalenvコマンドを実行した時で、以下のエラーが出た。
私のMac環境は

  • SnowLeopard:10.6.2
  • MacPython:2.6.4

という構成。

glossy-white:~ blacky$ mkvirtualenv hoge
New python executable in hoge/bin/python
Error [Errno 2] No such file or directory while executing command install_name_tool -change /System/Library/Frameworks/Pyt...ython @executable_path/../.Python hoge/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
load_entry_point('virtualenv==1.4.3', 'console_scripts', 'virtualenv')()
File "/Library/Python/2.6/site-packages/virtualenv-1.4.3-py2.6.egg/virtualenv.py", line 528, in main
use_distribute=options.use_distribute)
File "/Library/Python/2.6/site-packages/virtualenv-1.4.3-py2.6.egg/virtualenv.py", line 611, in create_environment
site_packages=site_packages, clear=clear))
File "/Library/Python/2.6/site-packages/virtualenv-1.4.3-py2.6.egg/virtualenv.py", line 805, in install_python
py_executable])
File "/Library/Python/2.6/site-packages/virtualenv-1.4.3-py2.6.egg/virtualenv.py", line 556, 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
ERROR: Environment '/Users/blacky/.virtualenvs/hoge' does not contain an activate script.

エラーメッセージを見ると、Appleの開発ツールが入ってないよと怒られているようなので、エラーメッセージをたよりにぐぐってみるとXCodeをインストールすれば問題なく動くということがわかった。
そこで早速ダウンロードし、インストールを行ったがやはりダメだった。
で、よく見てみるとLeopard用のXCodeをインストールしていたようで、SnowLeopard用のXCodeをインストールしたら問題なく動いた。

いやー、こんなんでXCodeを2回も落とすハメになり(iPhone SDK込みで落としたので合計5GBほど)大変時間をロスした。
DLするときはちゃんと確認しましょう。