- PR -

SH用GDBを用いたEclipse上でのデバッグ方法

1
投稿者投稿内容
くまぁ
常連さん
会議室デビュー日: 2006/01/26
投稿数: 21
投稿日時: 2006-01-31 16:21
皆様お世話になっております。
題記の件についてご質問させて頂きます。


一般的にEclipse上でC言語開発が行われる場合には、
コンパイラにGCCを用いられる方が多いと思います。

私も今までGCCを用いていたのですが、今回はSH用GCC
を用いることになりました。

ビルド自体は「Makefile」の記述を少し変える程度で
今まで同様、OBJファイルやEXEファイルが作成され、
安心していたのですが、デバッグが上手くいきません。

デバッグを行った際にエラーウィンドウが表示され、
コンソールウィンドウに下記のメッセージが表示され
ます。


【エラーメッセージ】
エラーのため実行が中断しました。

【コンソールメッセージ】
mi_cmd_stack_list_frames: No stack.
No symbol "new" in current context.
Don't know how to run. Try "help target".


このメッセージが表示された後に、コンソールウィンドウ
に「target sim」→「load」→「run」と入力すると、今
まで通りデバッグウィンドウでステップ実行等が行えるよう
になります。


【エラーメッセージ表示後】
target sim (←入力)
Connected to the simulator.
load (←入力)
Loading section .text, size 0x44 vma 0x0
Loading section .rodata, size 0x1c vma 0x0
Start address 0x0
Transfer rate: 768 bits in <1 sec.
run (←入力)


以上の内容から

Eclipse上でSH用GDBを用いてデバッグする際に、
上記のメッセージや入力を行わずにステップ実行
画面まで到達する正しい手法(設定)

があれば、是非ご教授下さい。
宜しくお願いします。
くまぁ
常連さん
会議室デビュー日: 2006/01/26
投稿数: 21
投稿日時: 2006-02-01 15:53
GDBについて調べていると以下のことがわかりました。

・"target sim","load","run"これらはGDBコマンドと呼ばれる。
・GDBコマンドは外部ファイルから読み込むことができる


確認の意味を含め、コマンドプロンプトを立ち上げ、次の入力を
行ってみるとGDB起動後に"target sim"等のコマンドを手入力する
必要はありませんでした。

% gdb -x 外部ファイル名

【外部ファイル中身】
target sim
load
run


ということは、Eclipseでデバッグを行う際に"-x 外部ファイル名"
にあたる部分を初期設定できれば、希望する動作(SH用GDBを用いた
Eclipse上でのデバッグ)を実現できそうなのですが・・・。

1

スキルアップ/キャリアアップ(JOB@IT)