首页 > 解决方案 > 为什么 Libclang 无法获取头文件中定义的函数的定义?

问题描述

我正在使用 LibClang 列出所有函数调用及其相应的定义。以下是执行此操作的 python 脚本:

def traverse(node):
   if node.kind == CALL_EXPR:
       print(node.displayname, node.get_defintion()) 
   for c in node.get_children():
       traverse(c)

以下是我运行它的 cpp 代码:

#include<math.h> 
int main()
{
   float n = sqrt(3.0);
}

现在,对于引用 sqrt 的 CXcursor,我得到输出 sqrt , None

有人可以解释为什么它无法找到函数的定义吗?

标签: pythonc++parsingclanglibclang

解决方案


-I path/to/header/directory使用参数运行您的 libclang 解析方法(无论您使用哪个)


推荐阅读