forked from OSchip/llvm-project
41 lines
1.5 KiB
ReStructuredText
41 lines
1.5 KiB
ReStructuredText
=============
|
|
Configuration
|
|
=============
|
|
|
|
.. contents::
|
|
|
|
.. role:: raw-html(raw)
|
|
:format: html
|
|
|
|
Clangd has a bunch of command-line options that can change its behaviour in
|
|
certain situations. This page aims to define those configuration knobs.
|
|
|
|
Those command line arguments needs to be specified in an editor-specific way.
|
|
You can find some editor specific instructions in `here <https://clang.llvm.org/extra/clangd/Installation.html#id3>`__.
|
|
|
|
--query-driver
|
|
==============
|
|
|
|
Clangd makes use of clang behind the scenes, so it might fail to detect your
|
|
standard library or built-in headers if your project is making use of a custom
|
|
toolchain. That is quite common in hardware-related projects, especially for the
|
|
ones making use of gcc (e.g. ARM's `arm-none-eabi-gcc`).
|
|
|
|
You can specify your driver as a list of globs or full paths, then clangd will
|
|
execute drivers and fetch necessary include paths to compile your code.
|
|
|
|
For example if you have your compilers at:
|
|
- `/path/to/my-custom/toolchain1/arm-none-eabi-gcc`,
|
|
- `/path/to/my-custom/toolchain2/arm-none-eabi-g++`,
|
|
- `/path/to/my-custom2/toolchain/arm-none-eabi-g++`,
|
|
|
|
you can provide clangd with
|
|
`--query-driver=/path/to/my-custom/**/arm-none-eabi*` to enable execution of
|
|
any binary that has a name starting with `arm-none-eabi` and under
|
|
`/path/to/my-custom/`. This won't allow execution of the last compiler.
|
|
|
|
Full list of flags
|
|
==================
|
|
|
|
You can find out about the rest of the flags using `clangd --help`.
|