Editor come Emacs, Vim o VS Code supportano funzionalità come la navigazione nel codice, il completamento del codice, i messaggi di errore del compilatore in linea e altri ancora tramite LSP, il protocollo Language Server. Un server di lingua comune con supporto LSP è
clangd, che si basa sulla presenza di
compile_commands.json, un file JSON con un record dei comandi di compilazione per
ogni file di un progetto.
Come faccio a generare compile_commands.json per il codice sorgente XLA?
Utilizza lo script
build_tools/lint/generate_compile_commands.py. La seguente chiamata dalla radice del repository XLA genera un
file compile_commands.json esistente: bazel aquery "mnemonic(CppCompile,
//xla/...)" --output=jsonproto | python3
build_tools/lint/generate_compile_commands.py
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2024-11-06 UTC."],[],[]]