Mac OS X Yosemite で Pycharm 4 と連携するように PyROOT をセットアップしようとしています。
Pythonオプションを有効にしてROOTを(ローカルに)インストールし、必要な環境パスをすべて設定しました。
echo $PYTHONPATH
/Users/natalia/Software/root/lib:/Users/natalia/Software/root/bin:/Users/natalia/Software/root
シェルインタープリターからは問題なく動作します:
python
Python 2.7.6 (default, Sep 9 2014, 15:04:36)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import ROOT
>>> ROOT.__file__
'/Users/natalia/Software/root/lib/ROOT.pyc'
>>>
Pycharm では、Preferences->Project Interpreter->More->Show paths... を使用して、これらのパスをインタープリターに追加しようとしました。
そこを示すパスは次のとおりです。
file:///Library/Python/2.7/site-packages/pip-6.1.1-py2.7.egg
file:///Users/natalia/Software/root/lib
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages
file:///System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk
file:///System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload
file:///System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC
file:///Library/Python/2.7/site-packages
file:///Users/natalia/Software/root/bin
file:///Users/natalia/Software/root
Pycharm で次のファイルを作成しました。
import os
os.system("echo $PYTHONPATH")
import ROOT
実行すると、次のように返されます。
Traceback (most recent call last):
/Users/natalia/Software:/Users/natalia/Software/root:/Users/natalia/Work/Projects/untitled
File "/Users/natalia/Work/Projects/untitled/l.py", line 3, in <module>
import ROOT
ImportError: No module named ROOT
Pycharm の python から出力されたこの PYTHONPATH には、ROOT.pyc ファイルを実際に含むパス、つまり「/Users/natalia/Software/root/lib」が含まれていないことに注意してください (理由は不明です)。
私も汚いトリックをやってみました
os.system("export PYTHONPATH=$PYTHONPATH:/Users/natalia/Software/root/lib")
しかし、後で印刷しても実際にはパスが変更されないことがわかりました。
Pycharmがどこからパスを取得するかについて、私は完全に混乱しています。可能な解決策は大歓迎です。