【お知らせ】プログラミング記事の投稿はQiitaに移行しました。

Insight

InsightgdbGUIフロントエンドです。昔のMinGWには標準で付属していたのですが、最近は含まれていないようです。公開されているバイナリで一番新しいのは以下の6.6のようです。

これを展開してbin/insight.exeを起動すれば良さそうですが、起動しません。MinGWのパスが通っている所に置いてもダメです。結論から言うとPEヘッダのSubsystemが02(GUI)だと起動しないようです。バイナリエディタで以下の手パッチを施すと起動しました。

  • 00DC: 02→03

ビルド

最初はSubsystemの違いに気付かなかったので、Insightのソースをダウンロードしてビルドしました。

gcc-4.5.2でビルドするには多少の修正が必要でした。

なぜか最初はinsightがビルドされなかったのですが、make installした後にもう一度makeするとビルドできました。理由はよく分かりません。

自分でビルドしたinsight.exeは起動しました。しかし邪魔なコマンドプロンプトが見えています。試しにバイナリエディタでPEヘッダのSubsystemを02(GUI)に書き換えた所、起動しなくなりました。これは配布バイナリと同じ症状です。そこで逆に配布バイナリのSubsystemを03(CUI)に書き換えたら、起動することを見付けました。