2016-07-20 13 views
2

macを実行しているMacのセカンダリハードディスクにanaconda python3を新しくインストールします。anaconda pythonでsklearnエラーをインポートする3.52

import sklearn 

Library not loaded: /usr/local/lib/libgcc_s.1.dylib 
    Referenced from: /Volumes/SecondHD/anaconda/lib/python3.5/site-packages/scipy/sparse/linalg/isolve/_iterative.so 
    Reason: image not found 

gccは自家製でインストールし、存在しています。

which gcc 

は、私がlibgcc_s.1.dylib見つけることができます/usr/local/Cellar/gcc/6.1.0/lib/gcc/6で

/usr/bin/gcc 

ので、私はそれはそれカントーでもあります知っています/ usr/local/libにシンボリックリンクされていませんでした。

Cellarのすべてのライブラリから/ usr/local/libにシンボリックリンクを追加するのではなく、ライブラリの場所を検索パスに追加しました。私の〜の.profileで

は私が

export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/lib" 
export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/Cellar/gcc/6.1.0/lib/gcc/6" 

持っているしかし、それは動作しません。私は私の.profileに次の行を追加する場合は、エラーが表示されなくなり

export DYLD_FALLBACK_LIBRARY_PATH=/usr/local/Cellar/gcc/6.1.0/lib/gcc/6 

thisポストからの私の理解では、それがリンクするコードがあるときLIBRARY_PATHは(gccのような)コンパイラ、ライブラリを探します場所のリストがあるということです。しかし、Mac OSXでは、DYLD_LIBRARY_PATHとDYLD_FALLBACK_LIBRARY_PATHには、実行時にプログラムが共有ライブラリを検索する場所のリストが含まれています。

もしsklearnがgccライブラリを望むなら、コンパイル(そしてリンク)が起こることを意味します。なぜDYLD_FALLBACK_LIBRARY_PATHまたはDYLD_LIBRARY_PATHは、この行は十分ではない

export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/Cellar/gcc/6.1.0/lib/gcc/6" 

、なぜ必要とされていますか?

+0

をgccの? – cel

+0

「環境」はどういう意味ですか?私は環境変数export LIBRARY_PATH = "$ LIBRARY_PATH:/usr/local/Cellar/gcc/6.1.0/lib/gcc/6"を設定しました。そのフォルダにはlibgcc – aquagremlin

答えて

2

私は同じ問題を抱えていました。私がしたのは、gccのセラーフォルダから/ usr/local/libへのシンボリックリンクを作成することでした。

  1. あなたの右のパスの外観は、お使いの環境でのlibgccを持っているん

  2. ln -s /usr/local/Cellar/gcc/X.X.X/lib/gcc/6/* /usr/local/lib

+0

があります。私はhomebrewを通してgccを持っていませんが、シエラへのアップグレードに関する何かが私のインストールでいくつかの問題を壊しました。私は 'ln -s/usr/local/lib/gcc/6/lib */usr/local/lib /'を実行しなければなりませんでした。ありがとう! – dwanderson

+1

それは動作します!ありがとう! – linello

関連する問題