如何用 clang 构建 linux 内核的 compile_commands.json 文件(补全用)?

工作中要经常性的编辑 linux 内核代码,补全是个很头疼的问题,现在我用 lsp + cquery进行补全,但需要 JSON Compilation Databas 文件 compile_commands.json,我的问题是,如何用 clang 生成这个文件呢? 路过的老兄们帮我看看,纠结了很久 !!!

1 个赞

bear make 不行?

这两天试试看😄

我去看看,谢谢老兄

如果你用cmake,加个参数,就会生成这个json.

三楼的bear make可以,更自由,不用特意用cmake。但如果你用Mac,注意由于System Integration Protection带来的问题;也不用关了它(不推荐关),只要把bear装到不保护的路径下就好了。不然生成的文件总是空的。

1 个赞

了解 已经用 bear 生成了,虽有点瑕疵,但还在慢慢摸索,谢谢!!!