2014-02-11 35 views
3

我无法使用pymc以及psycopg2。从教程下面这个简单的代码片段:psycopg2,pymc,theano和DYLD_FALLBACK_LIBRARY_PATH

import pymc as pm 
with pm.Model() as model: 
    x = pm.Normal('x', mu=0., sd=1) 

导致以下错误:

Exception: The environment variable 'DYLD_FALLBACK_LIBRARY_PATH' does not contain the '/Users/josh/anaconda/envs/py27/lib' path in its value. This will make Theano unable to compile c code. Update 'DYLD_FALLBACK_LIBRARY_PATH' to contain the said value, this will fix this error.

我能够通过增加来解决这个问题:

export DYLD_FALLBACK_LIBRARY_PATH=$DYLD_FALLBACK_LIBRARY_PATH:/Users/josh/anaconda/envs/py27/lib 

到我的shell初始化文件.bashrc然而,这是我不明白的一部分,该行打破psycopg2

---> 50 from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID 
    51 
    52 from psycopg2._psycopg import Binary, Date, Time, Timestamp 

ImportError: dlopen(/Users/josh/anaconda/envs/py27/lib/python2.7/site-packages/psycopg2/_psycopg.so, 2): Library not loaded: @loader_path/../../../libpq.5.dylib                         
    Referenced from: /Users/josh/anaconda/envs/py27/lib/python2.7/site-packages/psycopg2/_psycopg.so 
    Reason: image not found 

我怎么能有psycopg2pymc(这里theano)住一起快乐?

这是在OS X上进行Python 2.7.6安装,并使用由conda创建的Python环境安装的。

回答

7

Theano的开发版本不需要更改为DYLD_FALLBACK_LIBRARY_PATH。所以撤消对它的更改并更新您的Theano版本。来源:

http://www.deeplearning.net/software/theano/install.html#bleeding-edge-install-instructions

运行取决于您需要的那些2命令之一:

pip install --upgrade --no-deps git+git://github.com/Theano/Theano.git --install-option='--prefix=~/.local' 
pip install --upgrade --no-deps git+git://github.com/Theano/Theano.git 

编辑:我删除了链接到其他地方的答案,在这里复制的答案。谢谢

+1

仅链接的答案令人不悦,因为不能保证链接始终保持可用。 SO旨在成为问答资源,而不是帮助论坛。这意味着这不仅仅是帮助个人解决问题,答案应该是独立的,以便它们对未来的搜索者有用。 –

+0

我明白这一点。但是由于用户在两个地方提出了同样的问题,并且在提出这个问题之前我已经写了一个答案,所以我不想重复我的工作。我应该怎么做呢?不回答?我认为这将是最糟糕的,然后链接到完全相同的答案。我同意这个链接通常不可靠,但这个在谷歌组上的链接比平均网址更可靠。我仍然想知道你在这种情况下应该怎么做。谢谢你的评论。 – nouiz

+0

我会建议如果你在SO上回答,你应该在SO上发布完整的答案。如果您链接到其他人的答案,请提供摘要。如果您链接到自己的答案,则可以将其复制。在两个地方没有任何损害 - 事实上,这种方式更具有“容错性” - 如果您写了它,Google团体不会拥有版权,您也可以。而且,FWIW,只有链接的答案往往会得到少量的赞扬,并且往往仅仅因为这个原因而得出低价。 –