زمینه
ویرایشگرهایی مانند Emacs، Vim یا VS Code از ویژگیهایی مانند پیمایش کد، تکمیل کد، پیامهای خطای کامپایلر درون خطی و موارد دیگر، از طریق LSP ، پروتکل سرور زبان پشتیبانی میکنند. یک سرور زبان رایج با پشتیبانی از LSP، clangd است، که متکی به وجود compile_commands.json
، یک فایل JSON با رکوردی از دستورات کامپایل برای هر فایل در یک پروژه است.
چگونه می توانم compile_commands.json
برای کد منبع XLA ایجاد کنم؟
از اسکریپت build_tools/lint/generate_compile_commands.py استفاده کنید. فراخوانی زیر از ریشه مخزن XLA یک فایل compile_commands.json
در محل ایجاد می کند: bash bazel aquery "mnemonic(CppCompile, //xla/...)" --output=jsonproto | \ python3 build_tools/lint/generate_compile_commands.py