Hintergrund
Editoren wie Emacs, Vim oder VS Code unterstützen Features wie Codenavigation, Codevervollständigung, Inline-Compiler-Fehlermeldungen und andere über LSP, das Language Server Protocol. Ein gängiger Sprachserver mit LSP-Unterstützung ist clangd. Er basiert auf der Vorhandensein von compile_commands.json
, einer JSON-Datei mit einem Eintrag der Kompilierungsbefehle für jede Datei in einem Projekt.
Wie generiere ich compile_commands.json
für XLA-Quellcode?
Verwenden Sie das Skript build_tools/lint/generate_compile_commands.py. Mit dem folgenden Aufruf aus dem XLA-Repository-Stamm wird eine compile_commands.json
-Datei generiert: bash bazel aquery "mnemonic(CppCompile,
//xla/...)" --output=jsonproto | \ python3
build_tools/lint/generate_compile_commands.py