我正在尝试运行一个找到here的示例,但它始终无法执行。经过一些调试后,我发现node.get_children()会导致异常,这里是追溯:
Traceback (most recent call last):
File "_ctypes/callbacks.c", line 314, in 'calling callback function'
File "C:\Python27\lib\site-packages\clang\cindex.py", line 1383, in visitor
children.append(child)
AttributeError: 'str' object has no attribute 'append'
我在Windows上使用LLVM 4.0.1,我通过pip安装了clang(同时尝试了clang3.5和clang4.0.post1)。
这是我的LD_LIBRARY_PATH:C:\ Program Files \ LLVM \ bin,我添加到了我的 像这样的路径:%LD_LIBRARY_PATH%;%PYTHONPATH%; ...路径的其余部分......
安装LLVM5.0并从github克隆clang后,我遇到了同样的错误。
编辑:我使用的是Python2.7,但在切换到Python 3.6.3后,一切正常。
答案 0 :(得分:0)
切换到Python 3.6解决了这个问题。