静态检查工具codechecker运用简介
2021/9/10 23:09:05
本文主要是介绍静态检查工具codechecker运用简介,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
codechecker是一款开源的静态检查工具。
这里是github地址:https://github.com/Ericsson/codechecker
这是一款基于Clang Static Analyzer 和 Clang Tidy的工具。
codechecker的工作流程
开发提交代码后,在命令行里面运行codechecker工具:
大概命令分为两部分:
1. codechecker logging部分,就是记录哪些文件参与了编译。
CodeChecker log -b "make 命令" -o record.json
这个过程生成的将会是一个json,是一个包含了多个字典的列表,其实就是多个文件的编译记录。如下:
[ { "directory": "文件路径", "command": “编译命令”, "file": "文件名" }, ... ]
2. codechecker analyze部分,就是根据前面生成的json文件进行分析。
这里我们使用的report-hash是context-free-v2的,--skip ./skipfiles 这个也是可选的,可以让你跳过一些文件的检查,-j 指定了分析时占用的系统核数,record.json就是我们前面生成的json文件,-o指定了分析生成的report目录。可以用绝对路径,此处使用的是相对路径。
CodeChecker analyze --report-hash context-free-v2 --skip ./skipfiles -j $(nproc) \ record.json -o ./reports
3. codechecker parse 部分,这个可以在本地直接生成所有defects的报告。
网页的:CodeChecker parse -e html ./reports -o report.html 或者 文本的:CodeChecker parse ./reports >> report.txt
4. codechecker store部分
如果搭建了codechecker server的话,可以将步骤2生成的report 保存到server上,可以更好的可视化。codechecker的可视化做的还是非常不错的。
codechecker_url 就是server的url, report_name就是在server上的report显示的名字。--tag可以加上代码标签。
CodeChecker store ./reports --url $codechecker_url --name $report_name --tag $short_sha1
这些都是可以写到配置文件里的。
codechecker版本
目前codechecker已经开发到6.16.0版本:https://github.com/Ericsson/codechecker/releases/
这个release网页可以查看所有的发布的版本的新feature和修复的bugs。
CodeChecker有详细的帮助文档,都在docs下面。
codechecker/README.md
codechecker增量分析
接下来主要介绍一下最近研究的codechecker的增量跑法。未完待续。
这篇关于静态检查工具codechecker运用简介的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-10Rakuten 乐天积分系统从 Cassandra 到 TiDB 的选型与实战
- 2025-01-09CMS内容管理系统是什么?如何选择适合你的平台?
- 2025-01-08CCPM如何缩短项目周期并降低风险?
- 2025-01-08Omnivore 替代品 Readeck 安装与使用教程
- 2025-01-07Cursor 收费太贵?3分钟教你接入超低价 DeepSeek-V3,代码质量逼近 Claude 3.5
- 2025-01-06PingCAP 连续两年入选 Gartner 云数据库管理系统魔力象限“荣誉提及”
- 2025-01-05Easysearch 可搜索快照功能,看这篇就够了
- 2025-01-04BOT+EPC模式在基础设施项目中的应用与优势
- 2025-01-03用LangChain构建会检索和搜索的智能聊天机器人指南
- 2025-01-03图像文字理解,OCR、大模型还是多模态模型?PalliGema2在QLoRA技术上的微调与应用