2011-07-07 7 views
1

私のMacにpython用のigraphをインストールしましたが、インポートできません。まず私は、私が実行して、Python用インスタレーションを進め、Cコアライブラリをインストール:Macでigraphをインポートできません。10.6

python setup.py build 
python setup.py install 

すべてが正常に動作するように見えたが、私はPythonシェルからIGRAPHをインポートすることはできません。私はigraphのソースコードのフォルダの中にいません。そして、私はこのエラーを得た:

import igraph 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "build/bdist.macosx-10.3-fat/egg/igraph/__init__.py", line 30, in <module> 

    File "build/bdist.macosx-10.3-fat/egg/igraph/core.py", line 7, in <module> 
    File "build/bdist.macosx-10.3-fat/egg/igraph/core.py", line 6, in __bootstrap__ 
ImportError: dlopen(/Users/*****/.python-eggs/python_igraph-0.5.4-py2.7-macosx-10.3-fat.egg-tmp/igraph/core.so, 2): Symbol not found: _igraph_vector_destroy 
    Referenced from: /Users/*****/.python-eggs/python_igraph-0.5.4-py2.7-macosx-10.3-fat.egg-tmp/igraph/core.so 
    Expected in: dynamic lookup 

私は*のための私のフォルダの名前を置き換え、それを考慮していません。

私はOS 10.6.7上でPython 2.7を実行しています。したがって、事前にコンパイルされたigraphのバージョンはありません(2.5および2.6のみ)。このエラーは私が実行しているPythonのバージョンと関係がありますか? 可能であれば、どうすればこの問題を解決できますか?

+0

igraphのCコアはどこにインストールしましたか?それはリンカがそれを見つけることができるいくつかの標準的な場所にありますか?あなたのマシンにリンカを混乱させる可能性のあるコアライブラリ(古いバージョン)をインストールしていますか? –

+0

実際、私はコアライブラリの以前の実装を持っていません。私はCコアが標準的な場所にイントールされていると思います。なぜなら私は何も指定しなかったからです。私はちょうどしました: '。/ configure'そして' make'そして 'make install'()。私はどこにインストールすると思いますか?インストール場所を変更する場合は、Cコアへのパスをどのように設定すればインストールできますか?間違ったディレクトリにインストールしたものを削除するには? – Paulo

+0

普通の '' ./configure && make && make install''ダンスは ''/usr/local/lib/libigraph.dylib''にigraphをインストールしなければなりません。良い。ダウンロードしてコンパイルしたigraphコアのバージョン番号がPythonインタフェースのバージョン番号と一致していますか? –

答えて

1

がMac OS Xのデフォルトライブラリパスにないため、igraphが/usr/local/lib/libigraph.dylibにインストールされているが、PythonがigraphモジュールのCコアを読み込もうとしたときに、igraphが見つかりません。少なくとも私はそう考える)。

まず、libigraph.dylibが実際に/usr/local/libにあるかどうかを確認してください。その後、これを試してみてください。

DYLD_LIBRARY_PATH=/usr/local/lib python -m igraph.test.__init__ 

これは、リンカが/usr/local/libだけでなく、デフォルトの場所で見て回るように指示した後、全体IGRAPHテストスイートでのPythonを実行する必要があります。

+0

ええ、それは本当に私のために働いた。どうもありがとう! – Paulo

+0

これらの変更を保持したい場合は、ホームディレクトリの '' .profile''ファイルを '' export DYLD_LIBRARY_PATH =/usr/local/lib''のように編集してください。 –

関連する問題