OpenOCD小ネタ27-GDBInsightを2022年になっても使い続ける奴-

皆様あけましておめでとうございます。
今年もいきなりこんな感じでダラダラ続けさせていただきます…!



さて私のARMマイコンの開発環境は軽さをモットーとしたmake一発の
コマンドラインビルドをベースとしたものを10年以上前のXP時代の
ころから一貫して続けております。

さてWindows11の時代になり、その環境も過去のOSではできていたことが
できなくなったりしてその都度回避策を講じながら使用してきておりましたが…


GDBのGUI版のInsightデバッガがだいぶガタピシになってまいりました。
何かする度にフリーズしたり落ちたりでもはやだましだまし状態ですが
今の懸念はレジスタウインドウを開いたら速攻落ちる現象ですが何とか
対処法を見つけましたのでご紹介します。

先にこちらこちらのARMマイコン環境構築手順を軽く見ておいて下さい。
InsightのインストールディレクトリはC:¥Devz¥ARM¥insightとします。

レジスタウインドウはTCLスクリプトregwin.ithで構成されており、以下に示す
ディレクトリに存在します。
./insight/share/insight1.0/regwin.ith


そして、上記要領で49行目の_layout_tableをコメントアウトします。
これだけでデバッグ動作に入ったらレジスタウインドウ開いただけで
落ちる現象はひとまずなくなります。


上記措置を行うとレジスタウインドウを開いた際にまずこんな感じの見た目が
変なウインドウが開く…もともとの動作としてはallのタブがまず開くが
これがまずいらしく、OpenOCD側のtarget_get_gdb_reg_list_noread実行時に
Insightが落ちてしまうのです。
_layout_tableのコメントアウトでそれを停止?させます。


"General"を選択すると一般レジスタウインドウが開きます。


とりあえずレジスタを見ながらデバッグが再びできるようになりました。
まぁこれでwin10以降でもごまかしごまかししながらInsightをつかいつづけr


あああああアアァーーーー!!!!1!1!


ううむ絶対安定とはいえず40回に一回くらいはひでぶしてしまいますね…








と、いうわけでそろそろInaightから脱却して別のGDBデバッガUIを使用したいと
思っており、現在CodeLiteというIDEを評価中です。Windowsのアプリケーション
開発向けのIDEですが細かい設定ができ、ARM-GDBとOpenOCDと連携して
デバッグができそうなのを確認しております。
全部入りIDEですがどっかのEclipseと違って起動も動作もInsight並みに軽いです。

こちらの再現性が十分取れたらInsightを使ったデバッガとともにCodeLiteを使った
デバッグ方法も紹介していきたいと思います。

Comments

Post a Comment








Go to top of page