1

I have started writing a GTK App in C, and since I am using clangd as my language server, I want to configure it. The problem is, clangd won't listen when I pass this as my compiler flags:

CompileFlags:
        Add: [ $(pkg-config --cflags gtk4) ],
        Remove: [ ],
        Compiler: clang

I need to fix this if I want to make any use of the language server, so what do I do? (I use VSCode)

AggelosT
  • 108
  • 1
  • 9

1 Answers1

0

The .clangd config file does not support executing commands via $(command).

The recommended way to configure a project for use with clangd is to generate a compile_commands.json file based on your project's build metadata.

A simple way to do this is using bear. For example, if your project is built using make, you can run bear make and bear will generate a compile_commands.json file based on the compiler commands that make invoked.

For more sophisticated build systems, the build system may itself provide a way to generate a compile_commands.json file (for example, CMake has DCMAKE_EXPORT_COMPILE_COMMANDS=ON).

For more details, see https://clangd.llvm.org/installation#project-setup.

HighCommander4
  • 50,428
  • 24
  • 122
  • 194