Bear介绍
- Bear是一个为clang工具生成编译数据库的工具。
- 在clang项目中使用
JSON compilation database来提供有关如何处理单个编译单元的信息。这样,就很容易用备用程序重新运行编译。 - 一些构建系统本身支持
JSON compilation database的生成。对于不使用这种构建工具的项目,Bear会在构建过程中生成JSON文件。
项目github地址
安装bear
我使用的系统是Ubuntu24.04,可以直接使用命令进行安装
apt install bear
使用bear命令生成编译数据库
对于使用C语言写的项目,并且使用Makefile来进行编译的项目我们可以使用bear命令生成JSON compilation database。生成命令如下
# 在项目目录下执行bear -- make,我们此处以redis源码进行示例
➜ redis git:(6.2.16) bear -- make
执行完bear -- make后我们发现项目目录下多了一个compile_commands.events.json文件
VSCode安装clangd插件
在VSCode中我们可以安装clangd插件,这个插件会读取我们上一步生成的compile_commands.events.json,从而方便我们可以在项目中精准地跳转代码