如何解决clang Python绑定的加载错误?

时间:2014-09-23 17:08:58

标签: python c++ macos dll clang

我正在为clang尝试Python绑定。我使用命令行在Mac OS X Maverics上使用homebrew安装了LLVM及其python绑定

 brew install llvm --with-clang --with-python --with-lld

加载代码是

import clang
import clang.cindex

clang.cindex.Config.set_library_path('/usr/local/Cellar/llvm/3.5.0/lib')
index = clang.cindex.Index.create()

但这会引发错误:

  

clang.cindex.LibclangError:   dlopen(/usr/local/Cellar/llvm/3.5.0/lib/libclang.dylib,6):Library   未加载:@ rpath / libLLVM-3.5.dylib引用自:   /usr/local/Cellar/llvm/3.5.0/lib/libclang.dylib原因:图片没有   找到。要提供libclang的路径,请使用Config.set_library_path()或   Config.set_library_file()。

但我不明白为什么会出现这种错误。这里@rpath不是指/usr/local/Cellar/llvm/3.5.0/lib吗?但该目录下名为libLLVM-3.5.dylib的文件。为什么这种加载会导致错误以及如何解决?

1 个答案:

答案 0 :(得分:2)

将@synthesizerpatel的评论提升为答案:

在您的环境中添加以下环境变量:

 DYLD_LIBRARY_PATH=/usr/local/Cellar/llvm/3.5.0/lib/

readme也提到

您可能需要更改LD_LIBRARY_PATH,以便可以找到Clang库。