VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に

今回は「VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に」についてご紹介します。

関連ワード (フラグ、現在対応、開発等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


マイクロソフトは、オープンソースで開発しているコードエディタ「Visual Studio Code」(以下、VSCode)の最新版となる2023年9月版(バージョン1.83)で、JavaScriptデバッガがWebAssemblyのデバッグにも対応したことを明らかにしました。

The JavaScript debugger can now debug code compiled into WebAssembly if it includes DWARF debug information. For example, C++ code compiled using Emscripten can be debugged: pic.twitter.com/R1KWFdzET3

— Visual Studio Code (@code) October 13, 2023

WebAssemblyのデバッグは、VSCodeに拡張機能「WebAssembly DWARF Debugging」をインストールした上で、デバッグ用データフォーマットの「DWARF」による情報が含まれているWebAssemblyバイナリが対象となります。

DWARFによるデバッグ情報を含むWebAssemblyバイナリは、C/C++ではEmscriptenで「-g」フラグを付けてコンパイル、Zigでは「Debug」ビルドモードでのコンパイルで作成可能。Rustは現在対応するコンパイル機能を開発中とされています。

デバッグを開始した画面の例が下記です。画面左上には変数(Variables)が、左下にはコールスタックが表示され、画面右にはWebAssemblyにマップされたCのソースコードと、ブレークポイントが設定されているのが見て取れます。

fig

これによりVSCodeでソースコードを追いながらWebAssemblyの実行時デバッグが可能となります。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
阿寒湖の巨大マリモ、成長の理由は「層になったバクテリア」
科学・テクノロジー
2021-06-30 17:36
セキュリティを強化した企業や政府機関向け新型AndroidスマホをブラジルのSikurが発表
IT関連
2022-03-06 19:13
航空業界の水素燃料電池普及を目指すUniversal HydrogenがシリーズAで約22億円調達
モビリティ
2021-04-25 02:21
Wasabi Technologies Japan、バックアップとファイルサーバーのクラウド化に注力
IT関連
2024-09-14 08:17
デジタル時代における意思決定の新しいルール
IT関連
2021-07-02 05:38
ゼロバンク・デザインファクトリー、「みんなの銀行」のバンキングシステムを外販
IT関連
2022-11-10 05:39
群馬大学医学部附属病院、安定稼働に向けて情報管理システムを刷新
IT関連
2022-11-23 00:23
「アイリスロボティクス」設立 法人向けロボット事業でソフトバンクとアイリスオーヤマが協業
ロボット・AI
2021-01-28 11:33
フジパングループ本社、AI検索サービスで社内問い合わせ対応を効率化
IT関連
2022-07-27 13:33
日本IBMが示す、AIの本格活用に向けた課題と3つのアプローチ–AIの活用領域は拡大
IT関連
2022-07-15 22:02
さくらインターネットかたる詐欺メールに注意 個人情報の窃取やサーバ不正利用の恐れ
セキュリティ
2021-01-23 12:02
スマートシティ創造に向けたアクセラレータ「SmartCityX」が1年目の成果を発表、6つの共創事例を紹介
VC / エンジェル
2021-06-25 04:30
ガーミンが“スマート体重計”発売 アプリでデータ管理、スマートウォッチとも連携
くらテク
2021-01-22 03:03
グーグル、AIモデル「Gemini 1.5」の実験的バージョンを3種リリース
IT関連
2024-08-30 22:18