我已经开始用 C 语言编写 GTK 应用程序,并且由于我使用
clangd
作为我的语言服务器,所以我想配置它。问题是,当我将其作为编译器标志传递时,clangd
不会监听:
CompileFlags:
Add: [ $(pkg-config --cflags gtk4) ],
Remove: [ ],
Compiler: clang
如果我想使用语言服务器,我需要解决这个问题,那么我该怎么办? (我使用VSCode)
.clangd
配置文件不支持通过$(command)
执行命令。
配置项目以与 clangd 一起使用的推荐方法是根据项目的构建元数据生成
compile_commands.json
文件。
一个简单的方法是使用bear。例如,如果您的项目是使用
make
构建的,则可以运行 bear -- make
,并且 bear
将根据 compile_commands.json
调用的编译器命令生成 make
文件。
对于更复杂的构建系统,构建系统本身可能提供一种生成
compile_commands.json
文件的方法(例如,CMake 有 DCMAKE_EXPORT_COMPILE_COMMANDS=ON
)。
有关更多详细信息,请参阅 https://clangd.llvm.org/installation#project-setup。