为 libclang 全局设置 -D 宏编译器标志
set -D macro compiler flag globally for libclang
我正在尝试为代码生成突变体(使用基于 AST 的突变体生成器),为了编译使用 -D 宏。我可以使用 clang 使用此命令生成 AST 转储
clang -Xclang -ast-dump -fsyntax-only -DFLAG=0 -DOTHER_FLAG file.c
但是,突变生成器工具(Milu)使用libclang 来解析c 代码并生成AST。如果没有这些宏,libclang 将无法正确解析代码,并且无法在代码中添加#defines。我想全局设置这些 -D 宏。
比如我可以设置一个环境变量C_INCLUDE_PATH,由libclang读取。我想知道我是否可以为 -D 宏做类似的事情。
创建 CXTranslationUnit
时只需传递它们即可。 relevant function clang_createTranslationUnit
采用类似于 argv
和 argc
的参数。
我正在尝试为代码生成突变体(使用基于 AST 的突变体生成器),为了编译使用 -D 宏。我可以使用 clang 使用此命令生成 AST 转储
clang -Xclang -ast-dump -fsyntax-only -DFLAG=0 -DOTHER_FLAG file.c
但是,突变生成器工具(Milu)使用libclang 来解析c 代码并生成AST。如果没有这些宏,libclang 将无法正确解析代码,并且无法在代码中添加#defines。我想全局设置这些 -D 宏。
比如我可以设置一个环境变量C_INCLUDE_PATH,由libclang读取。我想知道我是否可以为 -D 宏做类似的事情。
创建 CXTranslationUnit
时只需传递它们即可。 relevant function clang_createTranslationUnit
采用类似于 argv
和 argc
的参数。