vscode配置wsl ubuntu c++的环境

在ubuntu安装llvm/clang

sudo apt install llvm clang clangd lldb

vscode的调试器接口是按GDB开发的,所以需要一个适配器,lldb-mi就是这个适配器。lldb-mi原来是llvm项目的一部分,后面成为了一个单独的项目https://github.com/lldb-tools/lldb-mi。

接下来安装lldb-mi

sudo apt install liblldb-dev
git clone https://github.com/lldb-tools/lldb-mi.git
cd lldb-mi
mkdir build
cd build
cmake ..
cmake --build .
cp lldb-mi /usr/bin

验证一下lldb-mi,发现有错误

使用lldb -P来查看查找的路径

执行一下命令

sudo mkdir -p /usr/lib/local/lib/python3.10/dist-packages
sudo ln -s /usr/lib/llvm/lib/python3.10/dist-packages/lldb /usr/lib/local/lib/python3.10/dist-packages
cd /usr/bin
sudo ln -s ../lib/llvm-14/bin/lldb-server lldb-server-14.0.0


再次运行lldb-mi验证是否正常

创建测试目录test,在目录中建立文件test.cpp。

用vsocde打开目录test。

创建tasks.json,用于编译源代码

{
    "tasks": [
      {
        "label": "compile",
        "type": "cppbuild",
        
        "command": "/usr/bin/clang++",
        "args": [
          "-fcolor-diagnostics",
          "-fansi-escape-codes",
          "-g",
          "${file}",
          "-o",
          "${fileDirname}/${fileBasenameNoExtension}"
        ],
        "options": {
          "cwd": "${fileDirname}"
        },
        "problemMatcher": [
          "$gcc"
        ],
        "group": {
          "kind": "build",
          "isDefault": true
        },
        "detail": "调试器生成的任务。"
      }
    ],
    "version": "2.0.0"
  }

创建文件launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "lldb调试",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "lldb",
            "miDebuggerPath": "/usr/bin/lldb-mi",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "setting set target.x86-disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "compile"
        }
    ]
}

现在按快捷键Ctrl+F5运行代码

设置断点,按F5测试调试功能

--完成--

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值