githubからパッケージを「編集可能」(-e)モードでインストールして、リポジトリを使用しながら簡単に作業できるようにしようとしています。
ただし、インストール後にPythonパスで使用できないため、問題が発生しています。
新しくクリーンなvirtualenv「パブリッシャー」を作成してアクティブ化した状態で、次を実行します。
pip install -e git+https://github.com/roberts81/easy-thumbnails.git#egg=easy_thumbnails
Obtaining easy-thumbnails from git+https://github.com/roberts81/easy-thumbnails.git#egg=easy_thumbnails
Cloning https://github.com/roberts81/easy-thumbnails.git to /Users/ben/Envs/publisher/src/easy-thumbnails
Running setup.py egg_info for package easy-thumbnails
no previously-included directories found matching 'docs/_build'
Installing collected packages: easy-thumbnails
Running setup.py develop for easy-thumbnails
no previously-included directories found matching 'docs/_build'
Creating /Users/ben/Envs/publisher/lib/python2.7/site-packages/easy-thumbnails.egg-link (link to .)
Adding easy-thumbnails 1.2 to easy-install.pth file
Installed /Users/ben/Envs/publisher/src/easy-thumbnails
Successfully installed easy-thumbnails
Cleaning up...
次に、Pythonを実行して(まだvirtualenvにある)、そのパッケージから何かをインポートしようとすると、失敗します。
Python 2.7.2 (default, Jun 20 2012, 16:23:33)
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import easy_thumbnails
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named easy_thumbnails
>>>
-eオプションを指定せずにインストールすると、すべてが正常に機能します。他のリポジトリでも同じ効果が得られます(つまり、インストール後にPythonパスに表示されません)pip install -e git+http://github.com/django/django.git@stable/1.5.x#egg=django
。では、何が得られるのでしょうか?
私が気付いていることの1つは、easy-install.pthファイルが実際には更新されていないように見えることです。
しかし、sudoで実行すると(pip install ...コマンド)、機能します!また、パッケージをグローバルに(virtualenvの外で、もちろんsudoを使用して)インストールでき、それは機能します。
バージョン:
pip == 1.2.1 virtualenv == 1.8.4 virtualenvwrapper == 3.6 python == 2.7.2 Mac OSX 10.8.2