久しぶりにWSL2上でOpenOCDとgdbを使いstm32のデバッグをしようとおもったのですが、openocd for windowsは動作するもののarm-none-eabi-gdb.exeがwsl上のファイルを認識してくれませんでした。以前は特に何もしなくても認識していたはずなんですが、理由はよくわかっていません。とはいえ、WSL2+VSCODEの環境でdebugをしたいので、少し手間がかかるのですが、表題の通りできたので備忘録として本稿を挙げてみることにしました。 wsl2とvscodeはすでにインストールされている前提ですが、開発関連ツールをインストールしておくこと以外、特に注意することはありません。 次にvscode拡張機能ですが、cortex-debugとC/C++拡張機能をインストールします。これも特に注意することはありません。 つづいてソースディレクトリに移動し、code + エンターとするとvscodeが起動します。コンパイルなどのtasks.jsonはターゲットによりことなるので、本稿では割愛します。 つぎはlaunch.jsonです。今回の場合例として以下のようにしました。 { "version": "0.2.0", "configurations": [ { "name": "Cortex Debug", "cwd": "${workspaceRoot}", "executable": "${workspaceRoot}/bluepill-dual-cdc.elf", "request": "launch", "type": "cortex-debug", "servertype": "external", "gdbTarget...