Mismatch between lldb and clang on vscode

Mismatch between lldb and clang on vscode

奇怪,今天嘗試在 vscode 中使用 lldb live debug 一個 C++ 程式,斷點下好後卻卡住了。

Console 的錯誤訊息是:bind: Invalid command `enable-meta-key’.

上網查了一下,貌似 vscode、 QtCreator 都有災情。

  1. https://github.com/vadimcn/vscode-lldb/issues/141
  2. https://bugreports.qt.io/browse/QTCREATORBUG-21615

追了一下才發現,自己的環境有兩份 clang ,分別是 6.0 和 8.0 。單純抄 vscode + C/C++ 的官方文件可能會導致 compiler 和 debugger 的版本不合,另外 miDebugerPath 似乎也要更新成使用 lldb-mi 版本,不然會有以下錯誤。

warning: ignoring unknown option: --interpreter=mi
warning: ignoring unknown option: --tty=/dev/pts/19

最終可用環境是:
ubuntu Ubuntu 18.04.1 LTS
vscode 1.42.1
C/C++ Extension 0.26.3
lldb 8
clang 8

{
    "MIMode": "lldb",
    "miDebuggerPath": "/usr/bin/lldb-mi-8"
}

Windows + Visual Studio + VSCode + CMake 的疑難雜症

Environment Windows 10 Visual Studio 2019 CMake 3.27.7 VSCode VSCode CMake Tools 1. CMAKE_BUILD_TYPE 是空的 參考一下 這篇 的處理。 大致上因為 Visual...