mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-14 16:46:32 +00:00

Building dexp on Debian 11 currently causes intermittent failures [0] [1]. Adding the CLANGD_BUILD_DEXP option to disable dexp from the build allows Debian 11 users to build clang (albeit without the dexp tool). This option is set to "Build Dexp" by default so, no change is expected without manual setting. [0]: https://bugzilla.yoctoproject.org/show_bug.cgi?id=15803 [1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1101322
clangd
clangd is a language server, and provides C++ IDE features to editors. This is not its documentation.
- the website is https://clangd.llvm.org/.
- the bug tracker is https://github.com/clangd/clangd/issues
- the source code is hosted at https://github.com/llvm/llvm-project/tree/main/clang-tools-extra/clangd.
- the website source code is at https://github.com/llvm/clangd-www/
Communication channels
If you have any questions or feedback, you can reach community and developers through one of these channels:
- chat: #clangd room hosted on LLVM's Discord channel.
- user questions and feature requests can be asked in the clangd topic on LLVM Discussion Forums
Building and testing clangd
For a minimal setup on building clangd:
-
Clone the LLVM repo to
$LLVM_ROOT
. -
Create a build directory, for example at
$LLVM_ROOT/build
. -
Inside the build directory run:
cmake $LLVM_ROOT/llvm/ -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra"
.- We suggest building in
Release
mode as building DEBUG binaries requires considerably more resources. You can check Building LLVM with CMake documentation for more details about cmake flags. - In addition to that using
Ninja
as a generator rather than defaultmake
is preferred. To do that consider passing-G Ninja
to cmake invocation. - Finally, you can turn on assertions via
-DLLVM_ENABLE_ASSERTS=On
.
- We suggest building in
-
Afterwards you can build clangd with
cmake --build $LLVM_ROOT/build --target clangd
, similarly run tests by changing target tocheck-clangd
.