vscode + clangd

发布时间 2023-07-16 22:02:02作者: 白水二木

环境 : Ubuntu
ps: clangd需要compile_commands.json辅助定位代码文件
为统一格式,以下方式都将在build文件夹中生成compile_commands.json

vscode

  1. 下载安装clangd或者在github官方仓库中下载最新版本,按照教程安装
    sudo apt install clangd-15
  2. vscode中安装插件clangd
  3. 在拓展设置中的Clangd: Arguments中添加
    --compile-commands-dir=${workspaceFolder}/build
  4. 设置更改或compile_commands.json更改后可以使用ctrl + shift + pclangd: Restart language server重新加载配置

cmake

# mkdir -p build ; cd build ; cmake ..
# 将在build文件夹中生成compile_commands.json

# 在CMakeLists.txt中
set (CMAKE_EXPORT_COMPILE_COMMANDS ON) 
# 或
# 在.bashrc中
export CMAKE_EXPORT_COMPILE_COMMANDS=1

compiledb

安装:pip install compiledb

# 在.bashrc中
# 以下命令不会构建产物
alias mkcc='mkdir -p ./build ; compiledb -o ./build/compile_commands.json -n --command-style make'

# 在项目文件夹中(存在Makefile)执行
$ mkcc

bear

安装:sudo apt install bear

# 在.bashrc中
# 以下命令会构建产物
alias mkbb='mkdir -p ./build ; bear --output ./build/compile_commands.json -- make'

# 在项目文件夹中(存在Makefile)执行
$ mkbb