首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在部分c源代码上使用CodeQL?

如何在部分c源代码上使用CodeQL?
EN

Stack Overflow用户
提问于 2020-05-31 00:28:39
回答 1查看 462关注 0票数 0

我有一个项目的部分c源代码,因此我不能编译。有没有人知道是否可以在这个项目上运行codeql?

通常,要创建数据库,codeql cli需要指定构建项目的命令,我无法绕过这一点,尽管我会说能够构建项目看起来并不是很重要。

不过,我可能错了,欢迎任何见解。

EN

回答 1

Stack Overflow用户

发布于 2020-06-01 17:05:23

CodeQL需要知道如何处理您想要分析的每个编译单元,以便获得诸如包含路径、来自编译器命令行的宏、C/C++方言和语言版本以及数据模型之类的信息。因此,没有直接的方法导入不能构建的项目;准确地解释任意部分C/C++源代码是不可能的。

根据您的实际情况,您可以通过各种方式解决此问题。例如,您可以编写一个bash脚本,在您关心的所有源文件上调用gccclang,根据您对应该传递的选项的最佳猜测,并在每个命令后使用|| true或类似的命令来抑制错误退出代码。如果您随后将此脚本作为CodeQL的“构建命令”提供,它将遵循您的领导并解释代码,就像您的编译器调用一样。即使你得到了编译错误,你仍然会得到一个你可以使用的(部分) CodeQL数据库。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62105456

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档