Next: , Previous: Active Targets, Up: Targets


13.2 ターゲットを管理するコマンド

target type parameters
GDBのホスト環境をターゲット・マシン またはターゲット・プロセスに接続します。 ターゲットとは、 典型的には、 デバッグ機能と通信するためのプロトコルを指します。 引数typeによって、 ターゲット・マシンの種類またはプロトコルを指定します。

parametersはターゲット・プロトコルによって解釈されるものですが、 典型的には、 接続すべきデバイス名やホスト名、 プロセス番号、 ボーレートなどが含まれます。

targetコマンドを実行した後に<RET>キーを押しても、 targetコマンドは再実行されません。


help target
利用可能なすべてのターゲットの名前を表示します。 現在選択されているターゲットを表示させるには、 info targetコマンドまたはinfo filesコマンドを使用します (see Commands to specify files)。
help target name
ある特定のターゲットに関する説明を表示します。 選択時に必要となるパラメータも表示されます。


set gnutarget args
GDBは、 自分で持っているライブラリBFDを使用してユーザ・ファイルを読み込みます。 GDBは、 実行ファイルコア・ファイル.oファイルのどれを自分が読み込んでいるのかを知っています。 しかし、 set gnutargetコマンドを使用して、 ファイルのフォーマットを指定することもできます。 ほとんどのtargetコマンドとは異なり、 gnutargetにおけるtargetは、 マシンではなくプログラムです。

注意: set gnutargetでファイル・フォーマットを指定するには、 実際のBFD名を知っている必要があります。

See Commands to specify files


show gnutarget
gnutargetがどのようなファイル・フォーマットを読むよう設定されているかを表示させるには、 show gnutargetコマンドを使用します。 gnutargetを設定していない場合、 個々のファイルのフォーマットをGDBが自動的に決定します。 この場合、 show gnutargetを実行すると ‘The current BDF target is "auto"’ と表示されます。

以下に、 一般的なターゲットをいくつか示します (GDBの構成によって、 利用可能であったり利用不可であったりします)。

target exec program
実行ファイルです。 ‘target exec program’は‘exec-file program’と同じです。


target core filename
コア・ダンプ・ファイルです。 ‘target core filename’は‘core-file filename’と同じです。


target remote dev
GDB固有のプロトコルによる、 リモートのシリアル・ターゲットです。 引数devによって、 接続を確立するために使用するシリアル装置 (例えば、 /dev/ttya) を指定します。 See Remote debuggingtarget remoteは、 loadコマンドもサポートするようになりました。 これは、 スタブをターゲット・システム上に持っていく方法が別にあり、 かつ、 ダウンロードが実行されたときに破壊されないようなメモリ域にそれを置くことができる場合にのみ役に立ちます。


target sim
CPUシミュレータです。 See Simulated CPU Target

以下のターゲットはすべて、 特定のCPUに固有のものであり、 特定の構成においてのみ利用可能です。

target abug dev
M68K用のABug ROMモニタです。


target adapt dev
A29K用のAdaptモニタです。


target amd-eb dev speed PROG
シリアル回線により接続されている、 リモートのPCに組み込まれたAMD EB29Kボードです。 target remoteの場合と同様、 devはシリアル装置です。 speedによって回線速度を指定することができます。 PROGは、 デバッグ対象となるプログラムをPC上のDOSから見た場合の名前です。 See The EBMON protocol for AMD29K


target array dev
Array Tech LSI33K RAIDコントローラ・ボードです。


target bug dev
MVME187(m88k)ボード上で動作するBUGモニタです。


target cpu32bug dev
CPU32(M68K)ボード上で動作するCPU32BUGモニタです。


target dbug dev
Motorola ColdFire用のdBUG ROMモニタです。


target ddb dev
Mips Vr4300用のNEC DDBモニタです。


target dink32 dev
PowerPC用のDINK32 ROMモニタです。


target e7000 dev
日立H8、 SH用のE7000エミュレータです。


target es1800 dev
M68K用のES-1800エミュレータです。


target est dev
CPU32(M68K)ボード上で動作するEST-300 ICEモニタです。


target hms dev
ユーザのホストにシリアル回線で接続された日立のSH、 H8/300、 H8/500ボードです。 特別なコマンドであるdevicespeedによって、 使用されるシリアル回線と通信速度を制御します。 See GDB and Hitachi Microprocessors


target lsi dev
Mips用のLSI ROMモニタです。


target m32r dev
三菱M32R/D ROMモニタです。


target mips dev
Mips用のIDT/SIM ROMモニタです。


target mon960 dev
Intel i960用のMON960モニタです。


target nindy devicename
Nindy Monitorにより制御されるIntel 960ボードです。 devicenameは、接続に使用するシリアル装置の名前です。 例えば/dev/ttyaです。 See GDB with a remote i960 (Nindy)


target nrom dev
NetROM ROMエミュレータです。 このターゲットは、 ダウンロードのみサポートしています。


target op50n dev
OKI HPPAボード上で動作するOP50Nモニタです。


target pmon dev
Mips用のPMON ROMモニタです。


target ppcbug dev

target ppcbug1 dev
PowerPC用のPPCBUG ROMモニタです。


target r3900 dev
東芝R3900 Mips用のDensan DVE-R3900 ROMモニタです。


target rdi dev
RDIライブラリ・インターフェイスを経由したARM Angelモニタです。


target rdp dev
ARM Demonモニタです。


target rom68k dev
M68K IDPボード上で動作するROM 68Kモニタです。


target rombug dev
OS/9000用のROMBUG ROMモニタです。


target sds dev
(MotorolaのADSなどの) PowerPCボード上で動作するSDSモニタです。


target sparclite dev
ロードするためだけの目的で使用される、 富士通のsparcliteボードです。 プログラムをデバッグするためには、 さらに別のコマンドを使用しなければなりません。 一例を挙げると、 GDBの標準的なリモート・プロトコルを使用する target remote devです。


target sh3 dev
target sh3e dev
日立SH-3、 SH-3Eターゲット・システムです。


target st2000 dev speed
Tandem STDBUGプロトコルを実行しているTandem ST2000電話交換機です。 devは、 ST2000のシリアル回線に接続されている装置の名前です。 speedは通信回線の速度です。 GDBがST2000にTCPまたはTelnetで接続するよう構成されている場合、 引数は使用されません。 See GDB with a Tandem ST2000


target udi keyword
AMD UDIプロトコルを使用するRemote AMD29Kターゲットです。 引数keywordが、 使用する29Kボードまたはシミュレータを指定します。 See The UDI protocol for AMD29K


target vxworks machinename
TCP/IPで接続されたVxWorksシステムです。 引数machinenameは、 ターゲット・システムのマシン名またはIPアドレスです。 See GDB and VxWorks


target w89k dev
Winbond HPPAボード上で動作するW89Kモニタです。

GDBの構成によって、 利用可能なターゲットも異なるものになります。 構成次第で、 ターゲットの数は多くなったり少なくなったりします。

多くのリモート・ターゲットでは、 接続に成功すると、 実行プログラムのコードをダウンロードすることが必要となります。

load filename
構成によってGDBに組み込まれたリモート・デバッグ機能によっては、 loadコマンドが使用可能になります。 これが利用可能な場合、 実行ファイルfilenameが (例えば、 ダウンロードやダイナミック・リンクによって) リモート・システム上でデバッグできるようになることを意味します。 また、 loadコマンドはadd-symbol-fileコマンドと同様、 ファイルfilenameのシンボル・テーブルをGDB内に記録します。

GDBがloadコマンドを提供していない場合、 それを実行しようとすると 「You can't do that when your target is ...」 というエラー・メッセージが表示されます。

実行ファイルの中で指定されたアドレスに、 ファイルはロードされます。 オブジェクト・ファイルのフォーマットによっては、 プログラムをリンクするときに、 ファイルをロードするアドレスを指定できるものもあります。 これ以外のフォーマット (例えば、 a.out) では、 オブジェクト・ファイルのフォーマットによって固定的にアドレスが指定されます。

VxWorksでloadコマンドを実行すると、 filenameで指定される実行ファイルがカレントなターゲット・システム上で動的にリンクされ、 シンボルがGDBに追加されます。

Intel 960ボードのNindyインターフェイスでは、 loadコマンドはfilenameで指定されるファイルを960側にダウンロードし、 そのシンボルをGDBに追加します。

日立のSH、 H8/300、 H8/500ボード (see GDB and Hitachi Microprocessors) に対するリモート・デバッグを選択すると、 loadコマンドはユーザ・プログラムを日立ボードにダウンロードし、 (fileコマンドと同様) ユーザのホスト・マシン上のGDBのカレントなターゲット実行ファイルとしてオープンします。

loadコマンドを実行した後に<RET>キーを押しても、 loadコマンドは繰り返し実行されません。