我在 Mac OS 10.9.4 (Maverick) 上运行 Python 2.7.8 :: Anaconda 2.0.1 (x86_64) 和 conda 3.5.5
我通过运行安装了 PyMC
conda install -c https://conda.binstar.org/pymc pymc
但是,import pymc
给出了一个错误(我在最后复制了 Traceback)。
Edit1:通过阅读这个问题"cannot import name flib",在我看来,问题在于通过使用 anaconda 安装 PyMC,它是针对不同的 gfortran 构建的,而不是由brew install gcc
. 我很乐意卸载并重试,但我希望在我把事情搞砸之前,有人会给我提供指导!
Edit2: Traceback 告诉我//anaconda/lib/python2.7/site-packages/pymc/flib.so
正在尝试调用/usr/local/Cellar/gfortran/4.8.2/gfortran/lib/libgfortran.3.dylib
,它不存在。我认为直到最近才homebrew
自行安装 gfortran,因此在/usr/local/Cellar
. 但是,现在gfortran
是/usr/local/Cellar/gcc/4.8.3_1/bin
由brew install gcc
. 帮助!
(旁白:由于该错误表明我安装的 gfortran 编译器存在问题,因此brew
让我为您提供一些详细信息,尽管可能不相关。
我gfortran
通过调用从 brew安装
brew install gcc
它抛出了一些错误,并建议我链接 gmp、mpfr、libmpc、isl 和 cloog。因此我做到了
brew link gmp
(和mpfr等)
以防万一,which gfortran
给
/usr/local/bin/gfortran
这是回溯import pymc
:
In [1]: import pymc
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-5f262cfcb99b> in <module>()
----> 1 import pymc
//anaconda/lib/python2.7/site-packages/pymc/__init__.pyc in <module>()
28 from .PyMCObjects import *
29 from .InstantiationDecorators import *
---> 30 from .CommonDeterministics import *
31 from .NumpyDeterministics import *
32 from .distributions import *
//anaconda/lib/python2.7/site-packages/pymc/CommonDeterministics.py in <module>()
19 import inspect
20 import types
---> 21 from .utils import safe_len, stukel_logit, stukel_invlogit, logit, invlogit, value, find_element
22 from copy import copy
23 import sys
//anaconda/lib/python2.7/site-packages/pymc/utils.py in <module>()
12 from copy import copy
13 from .PyMCObjects import Variable
---> 14 from . import flib
15 import pdb
16 from numpy.linalg.linalg import LinAlgError
ImportError: dlopen(//anaconda/lib/python2.7/site-packages/pymc/flib.so, 2): Library not loaded: /usr/local/Cellar/gfortran/4.8.2/gfortran/lib/libgfortran.3.dylib
Referenced from: //anaconda/lib/python2.7/site-packages/pymc/flib.so
Reason: image not found