vscode 使用 clang 配置 c/c++ 开发环境

前言

笔者之前都是在使用 vscode 的 c/c++ 插件开发学习,由于工作接触的项目过大,在多人开发时,c/c++ 插件几乎无法使用。
经过他人推荐,最近在 vscode 上使用了基于 Language Server Protocol (LSP)clangd,工作体验瞬间飙升了几个层次。
因此,想要尝试 LSP 的完整体验,就在个人 PC 上使用 clang 搭建了 c/c++ 开发环境

环境介绍

Ubuntu 24.10

使用工具:clang、clangd、lldb、cmake、ninja

  • clang:c/c++ 编译器
  • clangd:LSP 服务器
  • lldb:c/c++ 调试器
  • camke:项目构建工具
  • ninja:项目构建加速工具

工具安装命令:

sudo apt install clang clangd lldb cmake ninja-build

vscode 1.96.2 客户端

使用插件:clangd、CodeLLDB、CMake、CMake Tools

  • clangd:c/c++ 语法高亮、代码补全、智能感知等,并且让 vsocde 变为 LSP 客户端
  • CodeLLDB:c/c++ 调试插件
  • CMake:cmake 语法高亮和代码补全
  • CMake Tools:cmake 项目构建插件

另外,CodeLLDB安装后会报错,根据提示需要在 github 下载一个 codelldb-linux-x64.vsix 插件,下载后安装即可。

问题汇总

clangd插件配置指定数据库的路径

clangd 插件工作依赖数据库 compile_commands.json 的解析,需要在 clangd 插件的 arguments 增加数据库的路径,参考设置:

    "clangd.arguments": [
        "--compile-commands-dir=${workspaceFolder}/build"
    ],

其中,compile_commands.json 在 CMake 配置或者运行后才会生成。如果没有生成,尝试在 CMakeList.txt 中增加参数 DCMAKE_EXPORT_COMPILE_COMMANDS

cmake 插件配置修改默认debug配置

若无意外,将 vscode 插件和 Ubuntu 工具都安装后,vscode 就可以使用命令 CMake: Run Without Debugging,但是 CMake: Debugshift + F5 会提示以下错误:

Configured debug type 'cppdbg' is not supported.

这是由于 vscode 默认调试工具是 cppdbg,在 CMake Tools 中的 Debug Config 中修改为 lldb 即可,参考设置:

    "cmake.debugConfig": {
      "type": "lldb",
      "request": "launch",
      "program": "${command:cmake.launchTargetPath}",
      "args": [],
      "cwd": "${workspaceFolder}"
    }

然后就可以愉快的调试啦。

参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值