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"
}

vscode menu bar 修改

kde neon 上的 vscode 貌似在自動更新後,native menu bar 的字體顏色變得跟 native theme 的顏色太接近,人眼幾乎沒辦法看出字來。
模糊的 menu bar調整了一下系統的 theme或是調整 dark mode 都沒有用。好在 menu bar 可以改成 vscode 自己畫。

  1. File > Preferences > Settings (or Ctrl+Shift+P > Preferences: Open Settings (UI))
  2. 用 window.titlebarbarstyle 當作 search settings 的關鍵字。
  3. 將 native 改成 custom,重開 vscode 就好了。

Reference

  1. Change Visual Studio Code’s title bar color

2020

復活吧,我的 blog

MiniFilter InstanceSetupCallback is not called?

一般來說,MiniFilter 的 InstanceSetupCallback 會在 filter manager 把 minifilter attache 到 volume 後呼叫。如果沒有的話,可以檢查一下 minifilter 的 INF 是否把 instance fla...